mbox series

[PULL,v3] Block layer patches

Message ID 20200713143306.311143-1-kwolf@redhat.com
State New, archived
Headers show
Series [PULL,v3] Block layer patches | expand

Pull-request

git://repo.or.cz/qemu/kevin.git tags/for-upstream

Message

Kevin Wolf July 13, 2020, 2:33 p.m. UTC
The following changes since commit 6c87d9f311dba0641bdc2df556056938a8bf2a12:

  Merge remote-tracking branch 'remotes/elmarco/tags/chardev-pull-request' into staging (2020-07-13 09:34:24 +0100)

are available in the Git repository at:

  git://repo.or.cz/qemu/kevin.git tags/for-upstream

for you to fetch changes up to 7637b225a8d59a3b9b0e31bbc4eb8a0788792ac5:

  block: Avoid stale pointer dereference in blk_get_aio_context() (2020-07-13 15:57:13 +0200)

----------------------------------------------------------------
Block layer patches:

- file-posix: Mitigate file fragmentation with extent size hints
- Tighten qemu-img rules on missing backing format
- qemu-img map: Don't limit block status request size
- Fix crash with virtio-scsi and iothreads

----------------------------------------------------------------
Eric Blake (10):
      qemu-img: Flush stdout before before potential stderr messages
      block: Finish deprecation of 'qemu-img convert -n -o'
      sheepdog: Add trivial backing_fmt support
      vmdk: Add trivial backing_fmt support
      qcow: Tolerate backing_fmt=
      block: Error if backing file fails during creation without -u
      qcow2: Deprecate use of qemu-img amend to change backing file
      iotests: Specify explicit backing format where sensible
      block: Add support to warn on backing file change without format
      qemu-img: Deprecate use of -b without -F

Greg Kurz (1):
      block: Avoid stale pointer dereference in blk_get_aio_context()

Kevin Wolf (3):
      qemu-img map: Don't limit block status request size
      iotests/059: Filter out disk size with more standard filter
      file-posix: Mitigate file fragmentation with extent size hints

Max Reitz (1):
      iotests: Simplify _filter_img_create() a bit

 qapi/block-core.json             |   11 +-
 docs/system/deprecated.rst       |   58 ++-
 docs/tools/qemu-img.rst          |    4 +
 include/block/block.h            |    4 +-
 include/block/block_int.h        |    1 +
 block.c                          |   53 +-
 block/block-backend.c            |    4 +-
 block/file-posix.c               |   44 ++
 block/qcow.c                     |   20 +-
 block/qcow2.c                    |    7 +-
 block/sheepdog.c                 |   18 +-
 block/stream.c                   |    2 +-
 block/vmdk.c                     |   14 +
 blockdev.c                       |    3 +-
 qemu-img.c                       |   20 +-
 tests/qemu-iotests/017           |    2 +-
 tests/qemu-iotests/017.out       |    2 +-
 tests/qemu-iotests/018           |    2 +-
 tests/qemu-iotests/018.out       |    2 +-
 tests/qemu-iotests/019           |    5 +-
 tests/qemu-iotests/019.out       |    2 +-
 tests/qemu-iotests/020           |   31 +-
 tests/qemu-iotests/020.out       |   15 +-
 tests/qemu-iotests/024           |   10 +-
 tests/qemu-iotests/024.out       |    4 +-
 tests/qemu-iotests/028           |    4 +-
 tests/qemu-iotests/028.out       |    2 +-
 tests/qemu-iotests/030           |   26 +-
 tests/qemu-iotests/034           |    2 +-
 tests/qemu-iotests/034.out       |    2 +-
 tests/qemu-iotests/037           |    2 +-
 tests/qemu-iotests/037.out       |    2 +-
 tests/qemu-iotests/038           |    2 +-
 tests/qemu-iotests/038.out       |    2 +-
 tests/qemu-iotests/039           |    3 +-
 tests/qemu-iotests/039.out       |    2 +-
 tests/qemu-iotests/040           |   47 +-
 tests/qemu-iotests/041           |   37 +-
 tests/qemu-iotests/042           |    4 +-
 tests/qemu-iotests/043           |   23 +-
 tests/qemu-iotests/043.out       |   12 +-
 tests/qemu-iotests/046           |    2 +-
 tests/qemu-iotests/046.out       |    2 +-
 tests/qemu-iotests/049.out       |    8 +-
 tests/qemu-iotests/050           |    4 +-
 tests/qemu-iotests/050.out       |    2 +-
 tests/qemu-iotests/051           |    2 +-
 tests/qemu-iotests/051.out       |    2 +-
 tests/qemu-iotests/051.pc.out    |    2 +-
 tests/qemu-iotests/054.out       |    2 +-
 tests/qemu-iotests/056           |    3 +-
 tests/qemu-iotests/059           |    2 +-
 tests/qemu-iotests/059.out       | 1009 +++++++++++++++++++-------------------
 tests/qemu-iotests/060           |    2 +-
 tests/qemu-iotests/060.out       |    2 +-
 tests/qemu-iotests/061           |   10 +-
 tests/qemu-iotests/061.out       |   11 +-
 tests/qemu-iotests/069           |    2 +-
 tests/qemu-iotests/069.out       |    2 +-
 tests/qemu-iotests/073           |    2 +-
 tests/qemu-iotests/073.out       |    2 +-
 tests/qemu-iotests/079.out       |    2 +-
 tests/qemu-iotests/082           |   10 +-
 tests/qemu-iotests/082.out       |   30 +-
 tests/qemu-iotests/085           |    4 +-
 tests/qemu-iotests/085.out       |    6 +-
 tests/qemu-iotests/089           |    2 +-
 tests/qemu-iotests/089.out       |    2 +-
 tests/qemu-iotests/095           |    4 +-
 tests/qemu-iotests/095.out       |    4 +-
 tests/qemu-iotests/097           |    4 +-
 tests/qemu-iotests/097.out       |   16 +-
 tests/qemu-iotests/098           |    2 +-
 tests/qemu-iotests/098.out       |    8 +-
 tests/qemu-iotests/106           |    7 +-
 tests/qemu-iotests/110           |    4 +-
 tests/qemu-iotests/110.out       |    4 +-
 tests/qemu-iotests/111.out       |    2 +-
 tests/qemu-iotests/112.out       |    4 +-
 tests/qemu-iotests/114           |   12 +
 tests/qemu-iotests/114.out       |    9 +
 tests/qemu-iotests/122           |   34 +-
 tests/qemu-iotests/122.out       |   12 +-
 tests/qemu-iotests/126           |    4 +-
 tests/qemu-iotests/126.out       |    4 +-
 tests/qemu-iotests/127           |    4 +-
 tests/qemu-iotests/127.out       |    4 +-
 tests/qemu-iotests/129           |    3 +-
 tests/qemu-iotests/133           |    2 +-
 tests/qemu-iotests/133.out       |    2 +-
 tests/qemu-iotests/139           |    2 +-
 tests/qemu-iotests/141           |    6 +-
 tests/qemu-iotests/141.out       |    4 +-
 tests/qemu-iotests/142           |    2 +-
 tests/qemu-iotests/142.out       |    2 +-
 tests/qemu-iotests/153           |   14 +-
 tests/qemu-iotests/153.out       |   35 +-
 tests/qemu-iotests/154           |   42 +-
 tests/qemu-iotests/154.out       |   42 +-
 tests/qemu-iotests/155           |   12 +-
 tests/qemu-iotests/156           |    9 +-
 tests/qemu-iotests/156.out       |    6 +-
 tests/qemu-iotests/158           |    2 +-
 tests/qemu-iotests/158.out       |    2 +-
 tests/qemu-iotests/161           |    8 +-
 tests/qemu-iotests/161.out       |    8 +-
 tests/qemu-iotests/175           |    6 +-
 tests/qemu-iotests/176           |    4 +-
 tests/qemu-iotests/176.out       |   32 +-
 tests/qemu-iotests/177           |    2 +-
 tests/qemu-iotests/177.out       |    2 +-
 tests/qemu-iotests/179           |    2 +-
 tests/qemu-iotests/179.out       |    2 +-
 tests/qemu-iotests/189           |    2 +-
 tests/qemu-iotests/189.out       |    2 +-
 tests/qemu-iotests/191           |   12 +-
 tests/qemu-iotests/191.out       |   12 +-
 tests/qemu-iotests/195           |    6 +-
 tests/qemu-iotests/195.out       |    6 +-
 tests/qemu-iotests/198           |    2 +-
 tests/qemu-iotests/198.out       |    3 +-
 tests/qemu-iotests/204           |    2 +-
 tests/qemu-iotests/204.out       |    2 +-
 tests/qemu-iotests/216           |    2 +-
 tests/qemu-iotests/224           |    4 +-
 tests/qemu-iotests/225           |    2 +-
 tests/qemu-iotests/225.out       |    2 +-
 tests/qemu-iotests/228           |    5 +-
 tests/qemu-iotests/243           |    7 +-
 tests/qemu-iotests/245           |    3 +-
 tests/qemu-iotests/249           |    4 +-
 tests/qemu-iotests/249.out       |    4 +-
 tests/qemu-iotests/252           |    2 +-
 tests/qemu-iotests/257           |    3 +-
 tests/qemu-iotests/259.out       |    2 +-
 tests/qemu-iotests/267           |    4 +-
 tests/qemu-iotests/267.out       |    6 +-
 tests/qemu-iotests/270           |    2 +-
 tests/qemu-iotests/270.out       |    2 +-
 tests/qemu-iotests/273           |    4 +-
 tests/qemu-iotests/273.out       |    4 +-
 tests/qemu-iotests/274           |   12 +-
 tests/qemu-iotests/274.out       |   29 +-
 tests/qemu-iotests/279           |    4 +-
 tests/qemu-iotests/279.out       |    4 +-
 tests/qemu-iotests/282.out       |    6 +-
 tests/qemu-iotests/290           |    2 +-
 tests/qemu-iotests/290.out       |    4 +-
 tests/qemu-iotests/301           |   88 ++++
 tests/qemu-iotests/301.out       |   59 +++
 tests/qemu-iotests/common.filter |   62 +--
 tests/qemu-iotests/group         |    1 +
 152 files changed, 1426 insertions(+), 990 deletions(-)
 create mode 100755 tests/qemu-iotests/301
 create mode 100644 tests/qemu-iotests/301.out

Comments

Peter Maydell July 14, 2020, 12:51 p.m. UTC | #1
On Mon, 13 Jul 2020 at 15:33, Kevin Wolf <kwolf@redhat.com> wrote:
>
> The following changes since commit 6c87d9f311dba0641bdc2df556056938a8bf2a12:
>
>   Merge remote-tracking branch 'remotes/elmarco/tags/chardev-pull-request' into staging (2020-07-13 09:34:24 +0100)
>
> are available in the Git repository at:
>
>   git://repo.or.cz/qemu/kevin.git tags/for-upstream
>
> for you to fetch changes up to 7637b225a8d59a3b9b0e31bbc4eb8a0788792ac5:
>
>   block: Avoid stale pointer dereference in blk_get_aio_context() (2020-07-13 15:57:13 +0200)
>
> ----------------------------------------------------------------
> Block layer patches:
>
> - file-posix: Mitigate file fragmentation with extent size hints
> - Tighten qemu-img rules on missing backing format
> - qemu-img map: Don't limit block status request size
> - Fix crash with virtio-scsi and iothreads
>
> ----------------------------------------------------------------

Fails on OpenBSD:

  TEST    iotest-qcow2: 114 [fail]
QEMU          --
"/home/qemu/qemu-test.yVOWVF/build/tests/qemu-iotests/../../aarch64-softmmu/qemu-system-aarch64"
-nodefaults -display none -machine virt -accel qtest
QEMU_IMG      --
"/home/qemu/qemu-test.yVOWVF/build/tests/qemu-iotests/../../qemu-img"
QEMU_IO       --
"/home/qemu/qemu-test.yVOWVF/build/tests/qemu-iotests/../../qemu-io"
--cache writeback --aio threads -f qcow2
QEMU_NBD      --
"/home/qemu/qemu-test.yVOWVF/build/tests/qemu-iotests/../../qemu-nbd"
IMGFMT        -- qcow2 (compat=1.1)
IMGPROTO      -- file
PLATFORM      -- OpenBSD/amd64 openbsd 6.6
TEST_DIR      -- /home/qemu/qemu-test.yVOWVF/build/tests/qemu-iotests/scratch
SOCK_DIR      -- /tmp/tmp.fiTIG5IIBg
SOCKET_SCM_HELPER --

--- /home/qemu/qemu-test.yVOWVF/src/tests/qemu-iotests/114.out  Mon
Jul 13 17:59:07 2020
+++ /home/qemu/qemu-test.yVOWVF/build/tests/qemu-iotests/114.out.bad
 Tue Jul 14 12:39:01 2020
@@ -1,8 +1,9 @@
 QA output created by 114
-qemu-img: warning: Deprecated use of backing file without explicit
backing format (detected format of raw)
-Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=67108864
backing_file=TEST_DIR/t.IMGFMT.orig
+./114: line 48: truncate: command not found
+qemu-img: TEST_DIR/t.IMGFMT: Could not open 'TEST_DIR/t.IMGFMT.orig':
No such file or directory
+Could not open backing image.
 Formatting 'TEST_DIR/t.IMGFMT.base', fmt=IMGFMT size=67108864
-qemu-img: warning: Deprecated use of backing file without explicit
backing format
+qemu-img: Could not open
'/home/qemu/qemu-test.yVOWVF/build/tests/qemu-iotests/scratch/t.qcow2.orig':
Could not open '/home/qemu/qemu-test.yVOWVF/build/tests/qemu-iotests/scratch/t.qcow2.orig':
No such file or directory
 qemu-img: warning: Deprecated use of backing file without explicit
backing format (detected format of IMGFMT)
 Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=67108864
backing_file=TEST_DIR/t.IMGFMT.base backing_fmt=IMGFMT
 qemu-img: warning: Deprecated use of unopened backing file without
explicit backing format, use of this image requires potentially unsafe
format probing
  TEST    iotest-qcow2: 117

thanks
-- PMM
Peter Maydell July 14, 2020, 7:23 p.m. UTC | #2
On Mon, 13 Jul 2020 at 15:33, Kevin Wolf <kwolf@redhat.com> wrote:
>
> The following changes since commit 6c87d9f311dba0641bdc2df556056938a8bf2a12:
>
>   Merge remote-tracking branch 'remotes/elmarco/tags/chardev-pull-request' into staging (2020-07-13 09:34:24 +0100)
>
> are available in the Git repository at:
>
>   git://repo.or.cz/qemu/kevin.git tags/for-upstream
>
> for you to fetch changes up to 7637b225a8d59a3b9b0e31bbc4eb8a0788792ac5:
>
>   block: Avoid stale pointer dereference in blk_get_aio_context() (2020-07-13 15:57:13 +0200)
>
> ----------------------------------------------------------------
> Block layer patches:
>
> - file-posix: Mitigate file fragmentation with extent size hints
> - Tighten qemu-img rules on missing backing format
> - qemu-img map: Don't limit block status request size
> - Fix crash with virtio-scsi and iothreads
>

Applied (fixed version), thanks.

Please update the changelog at https://wiki.qemu.org/ChangeLog/5.1
for any user-visible changes.

-- PMM