Re: [Qemu-devel] [PATCH for-2.9] blockjob: avoid recursive AioContext locking

2017-03-22 Thread John Snow
On 03/21/2017 01:48 PM, Paolo Bonzini wrote: > Streaming or any other block job hangs when performed on a block device > that has a non-default iothread. This happens because the AioContext > is acquired twice by block_job_defer_to_main_loop_bh and then released > only once by BDRV_POLL_WHILE.

Re: [Qemu-devel] [PATCH for-2.9] blockjob: avoid recursive AioContext locking

2017-03-21 Thread Eric Blake
On 03/21/2017 12:48 PM, Paolo Bonzini wrote: > Streaming or any other block job hangs when performed on a block device > that has a non-default iothread. This happens because the AioContext > is acquired twice by block_job_defer_to_main_loop_bh and then released > only once by BDRV_POLL_WHILE. (I

[Qemu-devel] [PATCH for-2.9] blockjob: avoid recursive AioContext locking

2017-03-21 Thread Paolo Bonzini
Streaming or any other block job hangs when performed on a block device that has a non-default iothread. This happens because the AioContext is acquired twice by block_job_defer_to_main_loop_bh and then released only once by BDRV_POLL_WHILE. (Insert rants on recursive mutexes, which unfortunatel