Message ID | 20200108143138.129909-1-slp@redhat.com (mailing list archive) |
---|---|
Headers | show |
Series | blockdev: Fix AioContext handling for various blockdev actions | expand |
Am 08.01.2020 um 15:31 hat Sergio Lopez geschrieben: > This patch series includes fixes for various issues related to > AioContext mismanagement for various blockdev-initiated actions. > > It also adds tests for those actions when executed on drives running > on an IOThread AioContext. Thanks, fixed up indentation in patch 6 and applied to the block branch. Kevin
On 08/01/20 15:31, Sergio Lopez wrote: > This patch series includes fixes for various issues related to > AioContext mismanagement for various blockdev-initiated actions. > > It also adds tests for those actions when executed on drives running > on an IOThread AioContext. Testing the latest addition to Patchew: Supersedes: <20191128104129.250206-1-slp@redhat.com> :) Paolo > --- > Changelog: > > v6: > - Rename the patch series. > - Add "block/backup-top: Don't acquire context while dropping top" > - Add "blockdev: Acquire AioContext on dirty bitmap functions" > - Add "blockdev: Return bs to the proper context on snapshot abort" > - Add "iotests: Test handling of AioContexts with some blockdev > actions" (thanks Kevin Wolf) > - Fix context release on error. (thanks Kevin Wolf) > > v5: > - Include fix for iotest 141 in patch 2. (thanks Max Reitz) > - Also fix iotest 185 and 219 in patch 2. (thanks Max Reitz) > - Move error block after context acquisition/release, to we can use > goto to bail out and release resources. (thanks Max Reitz) > - Properly release old_context in qmp_blockdev_mirror. (thanks Max > Reitz) > > v4: > - Unify patches 1-4 and 5-7 to avoid producing broken interim > states. (thanks Max Reitz) > - Include a fix for iotest 141. (thanks Kevin Wolf) > > v3: > - Rework the whole patch series to fix the issue by consolidating all > operations in the transaction model. (thanks Kevin Wolf) > > v2: > - Honor bdrv_try_set_aio_context() context acquisition requirements > (thanks Max Reitz). > - Release the context at drive_backup_prepare() instead of avoiding > re-acquiring it at do_drive_baclup(). (thanks Max Reitz) > - Convert a single patch into a two-patch series. > --- > > Sergio Lopez (8): > blockdev: fix coding style issues in drive_backup_prepare > blockdev: unify qmp_drive_backup and drive-backup transaction paths > blockdev: unify qmp_blockdev_backup and blockdev-backup transaction > paths > blockdev: honor bdrv_try_set_aio_context() context requirements > block/backup-top: Don't acquire context while dropping top > blockdev: Acquire AioContext on dirty bitmap functions > blockdev: Return bs to the proper context on snapshot abort > iotests: Test handling of AioContexts with some blockdev actions > > block/backup-top.c | 5 - > block/backup.c | 3 + > blockdev.c | 391 ++++++++++++++++++++----------------- > tests/qemu-iotests/141.out | 2 + > tests/qemu-iotests/185.out | 2 + > tests/qemu-iotests/219 | 7 +- > tests/qemu-iotests/219.out | 8 + > tests/qemu-iotests/281 | 247 +++++++++++++++++++++++ > tests/qemu-iotests/281.out | 5 + > tests/qemu-iotests/group | 1 + > 10 files changed, 484 insertions(+), 187 deletions(-) > create mode 100755 tests/qemu-iotests/281 > create mode 100644 tests/qemu-iotests/281.out >