[PULL 00/14] Block layer patches
The following changes since commit 17780edd81d27fcfdb7a802efc870a99788bd2fc: Merge tag 'quick-fix-pull-request' of https://gitlab.com/bsdimp/qemu into staging (2023-08-31 10:06:29 -0400) are available in the Git repository at: https://repo.or.cz/qemu/kevin.git tags/for-upstream for you to fetch changes up to bb86eb45297840c31dbc4df6bac02e50596f2376: block: Remove unnecessary variable in bdrv_block_device_info (2023-09-04 11:03:28 +0200) Block layer patches - Process I/O in the current AioContext (instead of the BB AioContext) - Optimise reqs_lock to make multiqueue actually scale - iotests: Fix reference output for some tests after recent changes - vpc: Avoid dynamic stack allocation - Code cleanup, improved documentation Dmitry Frolov (1): vmdk: Clean up bdrv_open_child() return value check Fabiano Rosas (2): block: Remove bdrv_query_block_node_info block: Remove unnecessary variable in bdrv_block_device_info Fiona Ebner (1): iotests: adapt test output for new qemu_cleanup() behavior Hanna Czenczek (1): block: Be more verbose in create fallback Kevin Wolf (1): qemu-img: Update documentation for compressed images Michael Tokarev (1): qemu-img: omit errno value in error message Peter Maydell (1): block/iscsi: Document why we use raw malloc() Philippe Mathieu-Daudé (1): block/vpc: Avoid dynamic stack allocation Stefan Hajnoczi (5): block: minimize bs->reqs_lock section in tracked_request_end() block: change reqs_lock to QemuMutex block: remove AIOCBInfo->get_aio_context() block-backend: process I/O in the current AioContext block-backend: process zoned requests in the current AioContext docs/tools/qemu-img.rst| 19 -- include/block/aio.h| 1 - include/block/block-global-state.h | 2 ++ include/block/block-io.h | 1 - include/block/block_int-common.h | 2 +- include/block/qapi.h | 3 --- block.c| 10 --- block/block-backend.c | 35 +++-- block/io.c | 53 +++--- block/iscsi.c | 1 + block/qapi.c | 32 ++- block/vmdk.c | 2 +- block/vpc.c| 4 +-- hw/nvme/ctrl.c | 7 - qemu-img.c | 4 +-- softmmu/dma-helpers.c | 8 -- util/thread-pool.c | 8 -- tests/qemu-iotests/080.out | 6 ++--- tests/qemu-iotests/109.out | 24 + tests/qemu-iotests/112.out | 6 ++--- tests/qemu-iotests/185 | 2 ++ tests/qemu-iotests/185.out | 4 +++ tests/qemu-iotests/244.out | 2 +- 23 files changed, 107 insertions(+), 129 deletions(-)
[PULL 00/14] Block layer patches
The following changes since commit 96662996eda78c48aa4e76d8615c7eb72d80: Merge remote-tracking branch 'remotes/dgilbert/tags/pull-migration-20210513a' into staging (2021-05-14 12:03:47 +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 b773c9fb68ceff9a9692409d7afbc5d6865983c6: vhost-user-blk: Check that num-queues is supported by backend (2021-05-14 18:04:27 +0200) Block layer patches - vhost-user-blk: Fix error handling during initialisation - Add test cases for the vhost-user-blk export - Fix leaked Transaction objects - qcow2: Expose dirty bit in 'qemu-img info' Coiby Xu (1): test: new qTest case to test the vhost-user-blk-server Kevin Wolf (8): block: Fix Transaction leak in bdrv_root_attach_child() block: Fix Transaction leak in bdrv_reopen_multiple() vhost-user-blk: Make sure to set Error on realize failure vhost-user-blk: Don't reconnect during initialisation vhost-user-blk: Improve error reporting in realize vhost-user-blk: Get more feature flags from vhost device virtio: Fail if iommu_platform is requested, but unsupported vhost-user-blk: Check that num-queues is supported by backend Michael Tokarev (1): qapi: spelling fix (addtional) Stefan Hajnoczi (3): block/export: improve vu_blk_sect_range_ok() tests/qtest: add multi-queue test case to vhost-user-blk-test vhost-user-blk-test: test discard/write zeroes invalid inputs Vladimir Sementsov-Ogievskiy (1): qcow2: set bdi->is_dirty qapi/qom.json| 4 +- include/hw/virtio/vhost.h| 2 + tests/qtest/libqos/vhost-user-blk.h | 48 ++ block.c | 9 +- block/export/vhost-user-blk-server.c | 9 +- block/qcow2.c| 1 + hw/block/vhost-user-blk.c| 85 ++- hw/virtio/vhost-user.c | 5 + hw/virtio/virtio-bus.c | 5 + tests/qtest/libqos/vhost-user-blk.c | 130 + tests/qtest/vhost-user-blk-test.c| 989 +++ MAINTAINERS | 2 + tests/qtest/libqos/meson.build | 1 + tests/qtest/meson.build | 4 + 14 files changed, 1232 insertions(+), 62 deletions(-) create mode 100644 tests/qtest/libqos/vhost-user-blk.h create mode 100644 tests/qtest/libqos/vhost-user-blk.c create mode 100644 tests/qtest/vhost-user-blk-test.c
[PULL 00/14] Block layer patches
The following changes since commit 3f2a357b95845ea0bf7463eff6661e43b97d1afc: Merge tag 'hw-cpus-20240119' of https://github.com/philmd/qemu into staging (2024-01-19 11:39:38 +) are available in the Git repository at: https://repo.or.cz/qemu/kevin.git tags/for-upstream for you to fetch changes up to ced0d71c5270bed828ed2bd4b116ddfb12862bf9: block/blklogwrites: Protect mutable driver state with a mutex. (2024-01-19 18:45:44 +0100) Block layer patches - virtio-blk: Multiqueue fixes and cleanups - blklogwrites: Fixes for write_zeroes and superblock update races - commit/stream: Allow users to request only format driver names in backing file format - monitor: only run coroutine commands in qemu_aio_context Ari Sundholm (2): block/blklogwrites: Fix a bug when logging "write zeroes" operations. block/blklogwrites: Protect mutable driver state with a mutex. Kevin Wolf (1): string-output-visitor: Fix (pseudo) struct handling Peter Krempa (2): commit: Allow users to request only format driver names in backing file format stream: Allow users to request only format driver names in backing file format Stefan Hajnoczi (9): iotests: add filter_qmp_generated_node_ids() iotests: port 141 to Python for reliable QMP testing monitor: only run coroutine commands in qemu_aio_context virtio-blk: move dataplane code into virtio-blk.c virtio-blk: rename dataplane create/destroy functions virtio-blk: rename dataplane to ioeventfd virtio-blk: restart s->rq reqs in vq AioContexts virtio-blk: tolerate failure to set BlockBackend AioContext virtio-blk: always set ioeventfd during startup qapi/block-core.json | 17 +- hw/block/dataplane/trace.h| 1 - hw/block/dataplane/virtio-blk.h | 34 --- include/block/block-global-state.h| 3 +- include/block/block_int-common.h | 4 +- include/block/block_int-global-state.h| 6 + include/hw/virtio/virtio-blk.h| 16 +- block.c | 37 ++- block/blklogwrites.c | 120 ++-- block/commit.c| 6 +- block/monitor/block-hmp-cmds.c| 2 +- block/stream.c| 10 +- blockdev.c| 13 + hw/block/dataplane/virtio-blk.c | 404 - hw/block/virtio-blk.c | 412 -- monitor/qmp.c | 17 -- qapi/qmp-dispatch.c | 24 +- qapi/string-output-visitor.c | 46 +++ tests/unit/test-bdrv-drain.c | 3 +- tests/qemu-iotests/iotests.py | 7 + hw/block/dataplane/meson.build| 1 - hw/block/dataplane/trace-events | 5 - meson.build | 1 - tests/qemu-iotests/060.out| 4 +- tests/qemu-iotests/071.out| 4 +- tests/qemu-iotests/081.out| 16 +- tests/qemu-iotests/087.out| 12 +- tests/qemu-iotests/108.out| 2 +- tests/qemu-iotests/109| 4 +- tests/qemu-iotests/109.out| 78 +++-- tests/qemu-iotests/117.out| 2 +- tests/qemu-iotests/120.out| 2 +- tests/qemu-iotests/127.out| 2 +- tests/qemu-iotests/140.out| 2 +- tests/qemu-iotests/141| 307 --- tests/qemu-iotests/141.out| 200 +++-- tests/qemu-iotests/143.out| 2 +- tests/qemu-iotests/156.out| 2 +- tests/qemu-iotests/176.out| 16 +- tests/qemu-iotests/182.out| 2 +- tests/qemu-iotests/183.out| 4 +- tests/qemu-iotests/184.out| 32 +- tests/qemu-iotests/185| 6 +- tests/qemu-iotests/185.out| 45 ++- tests/qemu-iotests/191.out| 16 +- tests/qemu-iotests/195.out| 16 +- tests/qemu-iotests/223.out| 12 +- tests/qemu-iotests/227.out| 32 +- tests/qemu-iotests/247.out| 2 +- tests/qemu-iotests/273.out| 8 +- tests/qemu-iotests/308| 4 +- tests/qemu-iotests/308.out| 4 +- tests/qemu-iotests/tests/file-io-error| 5 +- tests/qemu-iotests/tests/iothreads-resize.out | 2 +- tests/qemu-iotests/tests/qsd-jobs.out | 4 +- 55 files c
Re: [PULL 00/14] Block layer patches
test-bdrv-drain is failing. I think my coroutine wrapper patch might be necessary: https://gitlab.com/qemu-project/qemu/-/jobs/5029372308#L4907 I have dropped this patch series for the time being. Feel free to remove my patches and send a new revision. I will debug the test-bdrv-drain issue. Stefan On Mon, 4 Sept 2023 at 10:37, Kevin Wolf wrote: > > The following changes since commit 17780edd81d27fcfdb7a802efc870a99788bd2fc: > > Merge tag 'quick-fix-pull-request' of https://gitlab.com/bsdimp/qemu into > staging (2023-08-31 10:06:29 -0400) > > are available in the Git repository at: > > https://repo.or.cz/qemu/kevin.git tags/for-upstream > > for you to fetch changes up to bb86eb45297840c31dbc4df6bac02e50596f2376: > > block: Remove unnecessary variable in bdrv_block_device_info (2023-09-04 > 11:03:28 +0200) > > > Block layer patches > > - Process I/O in the current AioContext (instead of the BB AioContext) > - Optimise reqs_lock to make multiqueue actually scale > - iotests: Fix reference output for some tests after recent changes > - vpc: Avoid dynamic stack allocation > - Code cleanup, improved documentation > > > Dmitry Frolov (1): > vmdk: Clean up bdrv_open_child() return value check > > Fabiano Rosas (2): > block: Remove bdrv_query_block_node_info > block: Remove unnecessary variable in bdrv_block_device_info > > Fiona Ebner (1): > iotests: adapt test output for new qemu_cleanup() behavior > > Hanna Czenczek (1): > block: Be more verbose in create fallback > > Kevin Wolf (1): > qemu-img: Update documentation for compressed images > > Michael Tokarev (1): > qemu-img: omit errno value in error message > > Peter Maydell (1): > block/iscsi: Document why we use raw malloc() > > Philippe Mathieu-Daudé (1): > block/vpc: Avoid dynamic stack allocation > > Stefan Hajnoczi (5): > block: minimize bs->reqs_lock section in tracked_request_end() > block: change reqs_lock to QemuMutex > block: remove AIOCBInfo->get_aio_context() > block-backend: process I/O in the current AioContext > block-backend: process zoned requests in the current AioContext > > docs/tools/qemu-img.rst| 19 -- > include/block/aio.h| 1 - > include/block/block-global-state.h | 2 ++ > include/block/block-io.h | 1 - > include/block/block_int-common.h | 2 +- > include/block/qapi.h | 3 --- > block.c| 10 --- > block/block-backend.c | 35 +++-- > block/io.c | 53 > +++--- > block/iscsi.c | 1 + > block/qapi.c | 32 ++- > block/vmdk.c | 2 +- > block/vpc.c| 4 +-- > hw/nvme/ctrl.c | 7 - > qemu-img.c | 4 +-- > softmmu/dma-helpers.c | 8 -- > util/thread-pool.c | 8 -- > tests/qemu-iotests/080.out | 6 ++--- > tests/qemu-iotests/109.out | 24 + > tests/qemu-iotests/112.out | 6 ++--- > tests/qemu-iotests/185 | 2 ++ > tests/qemu-iotests/185.out | 4 +++ > tests/qemu-iotests/244.out | 2 +- > 23 files changed, 107 insertions(+), 129 deletions(-) > >
Re: [PULL 00/14] Block layer patches
Am 06.09.2023 um 17:13 hat Stefan Hajnoczi geschrieben: > test-bdrv-drain is failing. I think my coroutine wrapper patch might > be necessary: > https://gitlab.com/qemu-project/qemu/-/jobs/5029372308#L4907 > > I have dropped this patch series for the time being. Feel free to > remove my patches and send a new revision. > > I will debug the test-bdrv-drain issue. Hm, I can't reproduce it. And even in CI only seems to have happened in this one job (ubuntu-20.04-s390x-all). If you think that it's caused by your patches, I can drop them for v2. Kevin
Re: [PULL 00/14] Block layer patches
On 5/14/21 6:31 PM, Kevin Wolf wrote: > The following changes since commit 96662996eda78c48aa4e76d8615c7eb72d80: > > Merge remote-tracking branch > 'remotes/dgilbert/tags/pull-migration-20210513a' into staging (2021-05-14 > 12:03:47 +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 b773c9fb68ceff9a9692409d7afbc5d6865983c6: > > vhost-user-blk: Check that num-queues is supported by backend (2021-05-14 > 18:04:27 +0200) > > > Block layer patches > > - vhost-user-blk: Fix error handling during initialisation > - Add test cases for the vhost-user-blk export > - Fix leaked Transaction objects > - qcow2: Expose dirty bit in 'qemu-img info' > > > Coiby Xu (1): > test: new qTest case to test the vhost-user-blk-server Not sure if worth blocking the pull request, but this new test breaks builds using --disable-tools (therefore breaks bisection).
Re: [PULL 00/14] Block layer patches
On Sun, 16 May 2021 at 22:09, Philippe Mathieu-Daudé wrote: > > On 5/14/21 6:31 PM, Kevin Wolf wrote: > > The following changes since commit 96662996eda78c48aa4e76d8615c7eb72d80: > > > > Merge remote-tracking branch > > 'remotes/dgilbert/tags/pull-migration-20210513a' into staging (2021-05-14 > > 12:03:47 +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 b773c9fb68ceff9a9692409d7afbc5d6865983c6: > > > > vhost-user-blk: Check that num-queues is supported by backend (2021-05-14 > > 18:04:27 +0200) > > > > > > Block layer patches > > > > - vhost-user-blk: Fix error handling during initialisation > > - Add test cases for the vhost-user-blk export > > - Fix leaked Transaction objects > > - qcow2: Expose dirty bit in 'qemu-img info' > > > > > > Coiby Xu (1): > > test: new qTest case to test the vhost-user-blk-server > > Not sure if worth blocking the pull request, but this new test > breaks builds using --disable-tools (therefore breaks bisection). Since I hadn't got as far as applying it, I'll drop the pullreq so that can be fixed. -- PMM
Re: [PULL 00/14] Block layer patches
On Fri, 19 Jan 2024 at 18:15, Kevin Wolf wrote: > > The following changes since commit 3f2a357b95845ea0bf7463eff6661e43b97d1afc: > > Merge tag 'hw-cpus-20240119' of https://github.com/philmd/qemu into staging > (2024-01-19 11:39:38 +) > > are available in the Git repository at: > > https://repo.or.cz/qemu/kevin.git tags/for-upstream > > for you to fetch changes up to ced0d71c5270bed828ed2bd4b116ddfb12862bf9: > > block/blklogwrites: Protect mutable driver state with a mutex. (2024-01-19 > 18:45:44 +0100) > > > Block layer patches > > - virtio-blk: Multiqueue fixes and cleanups > - blklogwrites: Fixes for write_zeroes and superblock update races > - commit/stream: Allow users to request only format driver names in > backing file format > - monitor: only run coroutine commands in qemu_aio_context > > Got some compile failures on this one; looks like the compiler on our s390 box didn't like this: https://gitlab.com/qemu-project/qemu/-/jobs/5973441293 https://gitlab.com/qemu-project/qemu/-/jobs/5973441291 https://gitlab.com/qemu-project/qemu/-/jobs/5973441330 In file included from ../include/qemu/host-utils.h:33, from ../include/qemu/bitops.h:16, from ../include/qemu/timer.h:4, from ../include/block/aio.h:24, from ../include/block/aio-wait.h:28, from ../include/block/block-io.h:27, from ../block/blklogwrites.c:15: ../block/blklogwrites.c: In function ‘blk_log_writes_co_do_log’: ../include/qemu/bswap.h:148:36: error: left shift count >= width of type [-Werror=shift-count-overflow] 148 | _x) & 0x00ffU) << 56) | \ | ^~ ../block/blklogwrites.c:409:27: note: in expansion of macro ‘const_le64’ 409 | .nr_entries = const_le64(0), | ^~ ../include/qemu/bswap.h:149:36: error: left shift count >= width of type [-Werror=shift-count-overflow] 149 | (((_x) & 0xff00U) << 40) | \ | ^~ ../block/blklogwrites.c:409:27: note: in expansion of macro ‘const_le64’ 409 | .nr_entries = const_le64(0), | ^~ cc1: all warnings being treated as errors thanks -- PMM
Re: [PULL 00/14] Block layer patches
Am 20.01.2024 um 18:21 hat Peter Maydell geschrieben: > On Fri, 19 Jan 2024 at 18:15, Kevin Wolf wrote: > > > > The following changes since commit 3f2a357b95845ea0bf7463eff6661e43b97d1afc: > > > > Merge tag 'hw-cpus-20240119' of https://github.com/philmd/qemu into > > staging (2024-01-19 11:39:38 +) > > > > are available in the Git repository at: > > > > https://repo.or.cz/qemu/kevin.git tags/for-upstream > > > > for you to fetch changes up to ced0d71c5270bed828ed2bd4b116ddfb12862bf9: > > > > block/blklogwrites: Protect mutable driver state with a mutex. > > (2024-01-19 18:45:44 +0100) > > > > > > Block layer patches > > > > - virtio-blk: Multiqueue fixes and cleanups > > - blklogwrites: Fixes for write_zeroes and superblock update races > > - commit/stream: Allow users to request only format driver names in > > backing file format > > - monitor: only run coroutine commands in qemu_aio_context > > > > > > Got some compile failures on this one; looks like the compiler > on our s390 box didn't like this: > > https://gitlab.com/qemu-project/qemu/-/jobs/5973441293 > https://gitlab.com/qemu-project/qemu/-/jobs/5973441291 > https://gitlab.com/qemu-project/qemu/-/jobs/5973441330 > > In file included from ../include/qemu/host-utils.h:33, > from ../include/qemu/bitops.h:16, > from ../include/qemu/timer.h:4, > from ../include/block/aio.h:24, > from ../include/block/aio-wait.h:28, > from ../include/block/block-io.h:27, > from ../block/blklogwrites.c:15: > ../block/blklogwrites.c: In function ‘blk_log_writes_co_do_log’: > ../include/qemu/bswap.h:148:36: error: left shift count >= width of > type [-Werror=shift-count-overflow] > 148 | _x) & 0x00ffU) << 56) | \ > | ^~ > ../block/blklogwrites.c:409:27: note: in expansion of macro ‘const_le64’ > 409 | .nr_entries = const_le64(0), > | ^~ > ../include/qemu/bswap.h:149:36: error: left shift count >= width of > type [-Werror=shift-count-overflow] > 149 | (((_x) & 0xff00U) << 40) | \ > | ^~ > ../block/blklogwrites.c:409:27: note: in expansion of macro ‘const_le64’ > 409 | .nr_entries = const_le64(0), > | ^~ > cc1: all warnings being treated as errors Looks like const_le64() introduced in commit 845d80a8 is buggy. I wonder why we even added it when there is no user of it (this blklogwrites one is the first one, so it exposes the error). Of course, 0 is just as good as const_le64(0), so I'll just change it to that for now. But I suppose const_le64() should either be fixed (and used by something) or removed. Kevin
Re: [PULL 00/14] Block layer patches
On Mon, 22 Jan 2024 at 11:15, Kevin Wolf wrote: > > Am 20.01.2024 um 18:21 hat Peter Maydell geschrieben: > > Got some compile failures on this one; looks like the compiler > > on our s390 box didn't like this: > > > > https://gitlab.com/qemu-project/qemu/-/jobs/5973441293 > > https://gitlab.com/qemu-project/qemu/-/jobs/5973441291 > > https://gitlab.com/qemu-project/qemu/-/jobs/5973441330 > > > > In file included from ../include/qemu/host-utils.h:33, > > from ../include/qemu/bitops.h:16, > > from ../include/qemu/timer.h:4, > > from ../include/block/aio.h:24, > > from ../include/block/aio-wait.h:28, > > from ../include/block/block-io.h:27, > > from ../block/blklogwrites.c:15: > > ../block/blklogwrites.c: In function ‘blk_log_writes_co_do_log’: > > ../include/qemu/bswap.h:148:36: error: left shift count >= width of > > type [-Werror=shift-count-overflow] > > 148 | _x) & 0x00ffU) << 56) | \ > > | ^~ > > ../block/blklogwrites.c:409:27: note: in expansion of macro ‘const_le64’ > > 409 | .nr_entries = const_le64(0), > > | ^~ > > ../include/qemu/bswap.h:149:36: error: left shift count >= width of > > type [-Werror=shift-count-overflow] > > 149 | (((_x) & 0xff00U) << 40) | \ > > | ^~ > > ../block/blklogwrites.c:409:27: note: in expansion of macro ‘const_le64’ > > 409 | .nr_entries = const_le64(0), > > | ^~ > > cc1: all warnings being treated as errors > > Looks like const_le64() introduced in commit 845d80a8 is buggy. I wonder > why we even added it when there is no user of it (this blklogwrites one > is the first one, so it exposes the error). > > Of course, 0 is just as good as const_le64(0), so I'll just change it to > that for now. But I suppose const_le64() should either be fixed (and > used by something) or removed. Using ULL as the suffix on the constants in the macro should be sufficient to fix the problem, I suspect. -- PMM
[Qemu-devel] [PULL 00/14] Block layer patches
The following changes since commit 5704c36d25ee84e7129722cb0db53df9faefe943: Merge remote-tracking branch 'remotes/kraxel/tags/fixes-31-20181112-pull-request' into staging (2018-11-12 15:55:40 +) are available in the Git repository at: git://repo.or.cz/qemu/kevin.git tags/for-upstream for you to fetch changes up to 1a42e5d8298d1b0f90d2254e7d559391dd3a45ca: Merge remote-tracking branch 'mreitz/tags/pull-block-2018-11-12' into queue-block (2018-11-12 17:57:32 +0100) Block layer patches: - file-posix: Don't waste a file descriptor for locking, don't lock the same bit multiple times - nvme: Fix double free and memory leak - Misc error handling fixes - Added NULL checks found by static analysis - Allow more block drivers to not be included in the qemu build Fam Zheng (4): file-posix: Use error API properly file-posix: Skip effectiveless OFD lock operations file-posix: Drop s->lock_fd tests: Add unit tests for image locking Jeff Cody (1): block: Make more block drivers compile-time configurable Kevin Wolf (1): Merge remote-tracking branch 'mreitz/tags/pull-block-2018-11-12' into queue-block Li Qiang (2): nvme: don't unref ctrl_mem when device unrealized nvme: free cmbuf in nvme_exit Liam Merwick (5): job: Fix off-by-one assert checks for JobSTT and JobVerbTable block: Null pointer dereference in blk_root_get_parent_desc() qemu-img: assert block_job_get() does not return NULL in img_commit() block: Fix potential Null pointer dereferences in vvfat.c qcow2: Read outside array bounds in qcow2_pre_write_overlap_check() Peter Maydell (1): blockdev: Consistently use snapshot_node_name in external_snapshot_prepare() zhenwei pi (1): blockdev: handle error on block latency histogram set error configure | 91 ++ block/block-backend.c | 3 +- block/file-posix.c | 122 --- block/qcow2-refcount.c | 18 +++--- block/vvfat.c | 46 - blockdev.c | 21 -- hw/block/nvme.c| 6 +- job.c | 4 +- qemu-img.c | 1 + tests/test-image-locking.c | 157 + block/Makefile.objs| 22 +-- tests/Makefile.include | 2 + 12 files changed, 400 insertions(+), 93 deletions(-) create mode 100644 tests/test-image-locking.c
[Qemu-devel] [PULL 00/14] Block layer patches
The following changes since commit 98bfaac788be0ca63d7d010c8d4ba100ff1d8278: Merge remote-tracking branch 'remotes/armbru/tags/pull-qapi-2017-09-01-v3' into staging (2017-09-04 13:28:09 +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 83a8c775a8bf134eb18a719322939b74a818d750: qcow2: move qcow2_store_persistent_dirty_bitmaps() before cache flushing (2017-09-06 14:40:18 +0200) Block layer patches Daniel P. Berrange (1): block: document semantics of bdrv_co_preadv|pwritev Eric Blake (2): qcow: Change signature of get_cluster_offset() qcow: Check failure of bdrv_getlength() and bdrv_truncate() Manos Pitsidianakis (10): block: pass bdrv_* methods to bs->file by default in block filters block: remove unused bdrv_media_changed block: remove bdrv_truncate callback in blkdebug block: add default implementations for bdrv_co_get_block_status() block: move ThrottleGroup membership to ThrottleGroupMember block: add aio_context field in ThrottleGroupMember block: tidy ThrottleGroupMember initializations block: convert ThrottleGroup to object with QOM block: add throttle block filter driver qemu-iotests: add 184 for throttle filter driver Pavel Butsykin (1): qcow2: move qcow2_store_persistent_dirty_bitmaps() before cache flushing qapi/block-core.json| 66 +++- include/block/block.h | 1 - include/block/block_int.h | 56 ++- include/block/throttle-groups.h | 52 ++- include/qemu/throttle-options.h | 60 +++- include/qemu/throttle.h | 3 + include/sysemu/block-backend.h | 20 +- block.c | 35 +- block/blkdebug.c| 20 +- block/block-backend.c | 62 ++-- block/commit.c | 12 +- block/io.c | 26 ++ block/mirror.c | 12 +- block/qapi.c| 8 +- block/qcow.c| 153 block/qcow2.c | 16 +- block/raw-format.c | 6 - block/throttle-groups.c | 750 ++-- block/throttle.c| 237 + blockdev.c | 4 +- tests/test-throttle.c | 111 +++--- util/throttle.c | 151 block/Makefile.objs | 1 + tests/qemu-iotests/184 | 205 +++ tests/qemu-iotests/184.out | 302 tests/qemu-iotests/group| 1 + 26 files changed, 1917 insertions(+), 453 deletions(-) create mode 100644 block/throttle.c create mode 100755 tests/qemu-iotests/184 create mode 100644 tests/qemu-iotests/184.out
[Qemu-devel] [PULL 00/14] Block layer patches
The following changes since commit cdfaa2720f4a09e5254868bd1f6e33f3e9eae76f: Merge remote-tracking branch 'remotes/armbru/tags/pull-monitor-2019-06-17-v2' into staging (2019-06-18 10:47:00 +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 128b05f7e00765d883164631b974a27af5b4b613: block/null: Expose read-zeroes option in QAPI schema (2019-06-18 16:41:10 +0200) Block layer patches: - block: Remove bs->job - block: Ignore loosening perm restrictions failures - block/null: Expose read-zeroes option in QAPI schema - iotests: Hide timestamps for skipped tests Kevin Wolf (1): block/null: Expose read-zeroes option in QAPI schema Max Reitz (9): iotests: Hide timestamps for skipped tests file-posix: Update open_flags in raw_set_perm() block: Add bdrv_child_refresh_perms() block/mirror: Fix child permissions block/commit: Drop bdrv_child_try_set_perm() block: Fix order in bdrv_replace_child() block: Add *tighten_restrictions to *check*_perm() block: Ignore loosening perm restrictions failures iotests: Test failure to loosen restrictions Vladimir Sementsov-Ogievskiy (4): block/replication: drop usage of bs->job block/block-backend: blk_iostatus_reset: drop usage of bs->job blockdev: blockdev_mark_auto_del: drop usage of bs->job block: drop bs->job qapi/block-core.json | 4 +- include/block/block_int.h | 30 ++--- include/block/blockjob.h | 9 +++ block.c| 155 + block/block-backend.c | 4 -- block/commit.c | 2 - block/file-posix.c | 4 ++ block/mirror.c | 70 block/replication.c| 21 +++--- blockdev.c | 19 +++--- blockjob.c | 22 --- monitor/qmp-cmds.c | 5 ++ tests/test-blockjob.c | 5 +- block/trace-events | 2 +- tests/qemu-iotests/182 | 21 ++ tests/qemu-iotests/182.out | 6 ++ tests/qemu-iotests/check | 1 + 17 files changed, 283 insertions(+), 97 deletions(-)
[Qemu-devel] [PULL 00/14] Block layer patches
The following changes since commit ffe22bf51065dd33022cf91f77a821d1f11c250d: Merge remote-tracking branch 'remotes/gonglei/tags/cryptodev-next-20161224' into staging (2017-01-06 15:18:09 +) are available in the git repository at: git://repo.or.cz/qemu/kevin.git tags/for-upstream for you to fetch changes up to c1bb86cd8ae67c14f79422b6e544d1e2bf40eeb2: block: Rename raw-{posix,win32} to file-*.c (2017-01-09 13:30:53 +0100) Block layer patches Eric Blake (2): block: Rename raw_bsd to raw-format.c block: Rename raw-{posix,win32} to file-*.c Kevin Wolf (11): coroutine: Introduce qemu_coroutine_enter_if_inactive() quorum: Remove s from quorum_aio_get() arguments quorum: Implement .bdrv_co_readv/writev quorum: Do cleanup in caller coroutine quorum: Inline quorum_aio_cb() quorum: Avoid bdrv_aio_writev() for rewrites quorum: Implement .bdrv_co_preadv/pwritev() quorum: Inline quorum_fifo_aio_cb() quorum: Clean up quorum_aio_get() blkdebug: Implement bdrv_co_preadv/pwritev/flush blkverify: Implement bdrv_co_preadv/pwritev/flush Paolo Bonzini (1): qemu-img: fix in-flight count for qemu-img bench MAINTAINERS | 6 +- block/Makefile.objs | 6 +- block/blkdebug.c| 86 block/blkverify.c | 201 +- block/{raw-posix.c => file-posix.c} | 0 block/{raw-win32.c => file-win32.c} | 0 block/gluster.c | 4 +- block/quorum.c | 410 +++- block/{raw_bsd.c => raw-format.c} | 2 +- block/trace-events | 4 +- configure | 2 +- include/block/block_int.h | 2 +- include/qemu/coroutine.h| 6 + qemu-img.c | 17 +- tests/qemu-iotests/071.out | 8 +- util/qemu-coroutine.c | 7 + 16 files changed, 392 insertions(+), 369 deletions(-) rename block/{raw-posix.c => file-posix.c} (100%) rename block/{raw-win32.c => file-win32.c} (100%) rename block/{raw_bsd.c => raw-format.c} (99%)
[Qemu-devel] [PULL 00/14] Block layer patches
The following changes since commit af352675efb7e92a1f5f6461a042a12015ab3d12: Merge remote-tracking branch 'remotes/aurel/tags/pull-target-sh4-20171218' into staging (2017-12-19 19:11:11 +) are available in the git repository at: git://repo.or.cz/qemu/kevin.git tags/for-upstream for you to fetch changes up to b4d526c87b26aff6d8b353951aa175a1236ad887: nvme: Add tracing (2017-12-20 11:05:49 +0100) Block layer patches Doug Gale (1): nvme: Add tracing Edgar Kaziakhmedov (1): qcow2: get rid of qcow2_backing_read1 routine Fam Zheng (1): qemu-img: Document --force-share / -U John Snow (1): iotests: fix 197 for vpc Kevin Wolf (9): block: Formats don't need CONSISTENT_READ with NO_IO block: Make bdrv_drain_invoke() recursive block: Call .drain_begin only once in bdrv_drain_all_begin() test-bdrv-drain: Test BlockDriver callbacks for drain block: bdrv_drain_recurse(): Remove unused begin parameter block: Don't wait for requests in bdrv_drain*_end() block: Unify order in drain functions block: Don't acquire AioContext in hmp_qemu_io() block: Document that x-blockdev-change breaks quorum children list Mao Zhongyi (1): hw/block/nvme: Convert to realize qapi/block-core.json | 4 + block/qcow2.h| 3 - block.c | 6 +- block/io.c | 31 ++-- block/qcow2.c| 51 +- hmp.c| 6 - hw/block/nvme.c | 367 --- tests/test-bdrv-drain.c | 137 +++ hw/block/trace-events| 93 ++ qemu-img.texi| 9 + tests/Makefile.include | 2 + tests/qemu-iotests/197 | 4 + tests/qemu-iotests/common.filter | 3 +- 13 files changed, 591 insertions(+), 125 deletions(-) create mode 100644 tests/test-bdrv-drain.c
Re: [Qemu-devel] [PULL 00/14] Block layer patches
On 12 November 2018 at 17:05, Kevin Wolf wrote: > The following changes since commit 5704c36d25ee84e7129722cb0db53df9faefe943: > > Merge remote-tracking branch > 'remotes/kraxel/tags/fixes-31-20181112-pull-request' into staging (2018-11-12 > 15:55:40 +) > > are available in the Git repository at: > > git://repo.or.cz/qemu/kevin.git tags/for-upstream > > for you to fetch changes up to 1a42e5d8298d1b0f90d2254e7d559391dd3a45ca: > > Merge remote-tracking branch 'mreitz/tags/pull-block-2018-11-12' into > queue-block (2018-11-12 17:57:32 +0100) > > > Block layer patches: > > - file-posix: Don't waste a file descriptor for locking, don't lock the > same bit multiple times > - nvme: Fix double free and memory leak > - Misc error handling fixes > - Added NULL checks found by static analysis > - Allow more block drivers to not be included in the qemu build > Applied, thanks. -- PMM
Re: [Qemu-devel] [PULL 00/14] Block layer patches
On 6 September 2017 at 15:02, Kevin Wolf wrote: > The following changes since commit 98bfaac788be0ca63d7d010c8d4ba100ff1d8278: > > Merge remote-tracking branch 'remotes/armbru/tags/pull-qapi-2017-09-01-v3' > into staging (2017-09-04 13:28:09 +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 83a8c775a8bf134eb18a719322939b74a818d750: > > qcow2: move qcow2_store_persistent_dirty_bitmaps() before cache flushing > (2017-09-06 14:40:18 +0200) > > > Block layer patches > Applied, thanks. -- PMM
Re: [Qemu-devel] [PULL 00/14] Block layer patches
On Tue, 18 Jun 2019 at 16:59, Kevin Wolf wrote: > > The following changes since commit cdfaa2720f4a09e5254868bd1f6e33f3e9eae76f: > > Merge remote-tracking branch > 'remotes/armbru/tags/pull-monitor-2019-06-17-v2' into staging (2019-06-18 > 10:47:00 +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 128b05f7e00765d883164631b974a27af5b4b613: > > block/null: Expose read-zeroes option in QAPI schema (2019-06-18 16:41:10 > +0200) > > > Block layer patches: > > - block: Remove bs->job > - block: Ignore loosening perm restrictions failures > - block/null: Expose read-zeroes option in QAPI schema > - iotests: Hide timestamps for skipped tests > Applied, thanks. Please update the changelog at https://wiki.qemu.org/ChangeLog/4.1 for any user-visible changes. -- PMM
Re: [Qemu-devel] [PULL 00/14] Block layer patches
On 9 January 2017 at 13:44, Kevin Wolf wrote: > The following changes since commit ffe22bf51065dd33022cf91f77a821d1f11c250d: > > Merge remote-tracking branch 'remotes/gonglei/tags/cryptodev-next-20161224' > into staging (2017-01-06 15:18:09 +) > > are available in the git repository at: > > > git://repo.or.cz/qemu/kevin.git tags/for-upstream > > for you to fetch changes up to c1bb86cd8ae67c14f79422b6e544d1e2bf40eeb2: > > block: Rename raw-{posix,win32} to file-*.c (2017-01-09 13:30:53 +0100) > > > Block layer patches > > Applied, thanks. -- PMM
Re: [Qemu-devel] [PULL 00/14] Block layer patches
On 20 December 2017 at 13:19, Kevin Wolf wrote: > The following changes since commit af352675efb7e92a1f5f6461a042a12015ab3d12: > > Merge remote-tracking branch 'remotes/aurel/tags/pull-target-sh4-20171218' > into staging (2017-12-19 19:11:11 +) > > are available in the git repository at: > > git://repo.or.cz/qemu/kevin.git tags/for-upstream > > for you to fetch changes up to b4d526c87b26aff6d8b353951aa175a1236ad887: > > nvme: Add tracing (2017-12-20 11:05:49 +0100) > > > Block layer patches Hi; this has a merge conflict in hw/block/nvme.c where both sets of changes are changing the way that the function handles errors, and I'm not sure which is correct. Can you resolve and resend, please? thanks -- PMM