On Tue, Nov 28, 2017 at 04:43:46PM +0100, Kevin Wolf wrote:
> This reverts the recent fix for the case of qemu-iotests 200 (block job
> completion races when using a separate I/O thread) that only fixed a
> symptom and caused many regressions, and replaces it with a new
> solution that hopefully attacks the right root cause.
>
> The series also contains a bonus fix for a bug that was uncovered by the
> different timing with the patches that are reverted here.
>
> Kevin Wolf (4):
> Revert "coroutine: abort if we try to schedule or enter a pending
> coroutine"
> Revert "blockjob: do not allow coroutine double entry or
> entry-after-completion"
> coroutine: Cancel aio_co_schedule() on direct entry
> block: Expect graph changes in bdrv_parent_drained_begin/end
>
> include/block/blockjob_int.h | 3 +--
> include/qemu/coroutine_int.h | 14 ++++----------
> block/io.c | 8 ++++----
> blockjob.c | 7 ++-----
> util/async.c | 26 +++++++++++++-------------
> util/qemu-coroutine-sleep.c | 12 ------------
> util/qemu-coroutine.c | 31 +++++++++++++++++--------------
> 7 files changed, 41 insertions(+), 60 deletions(-)
>
> --
> 2.13.6
>
Tested-by: Jeff Cody <jcody@redhat.com>