On Thu, Dec 07, 2017 at 08:13:14PM +0000, Stefan Hajnoczi wrote:
> v2:
> * Added docs/devel/multiple-iothreads.txt doc update [Kevin]
> * Added qemu-iotests 203 test case [Kevin]
> * Added iothread_stop() race fix to make 203 reliable
>
> Patch 1 is Paolo's recursive locking removal in bdrv_inactivate_all(). This
> solve migration hangs and is the main point of the patch series.
>
> Patches 2-6 add a qemu-iotests test case and update the multiple-iothreads.txt
> documentation to discourage recursive AioContext locking.
>
> Based-on: <20171206144550.22295-1-stefanha@redhat.com>
>
> Paolo Bonzini (1):
> block: avoid recursive AioContext acquire in bdrv_inactivate_all()
>
> Stefan Hajnoczi (5):
> docs: mark nested AioContext locking as a legacy API
> blockdev: add x-blockdev-set-iothread force boolean
> iotests: add VM.add_object()
> iothread: fix iothread_stop() race condition
> qemu-iotests: add 203 savevm with IOThreads test
>
> docs/devel/multiple-iothreads.txt | 7 +++--
> qapi/block-core.json | 6 +++-
> include/sysemu/iothread.h | 3 +-
> block.c | 14 ++++++++--
> blockdev.c | 11 ++++----
> iothread.c | 20 +++++++++----
> tests/qemu-iotests/203 | 59 +++++++++++++++++++++++++++++++++++++++
> tests/qemu-iotests/203.out | 6 ++++
> tests/qemu-iotests/group | 1 +
> tests/qemu-iotests/iotests.py | 5 ++++
> 10 files changed, 114 insertions(+), 18 deletions(-)
> create mode 100755 tests/qemu-iotests/203
> create mode 100644 tests/qemu-iotests/203.out
>
> --
> 2.14.3
>
Thanks, applied to my block-next tree:
https://github.com/stefanha/qemu/commits/block-next
Stefan