v2: * Add missing backtrace in Patch 3 It's possible to hit the "Co-routine re-entered recursively" error with -drive format=qcow2,aio=native. This is a regression introduced by a linux-aio.c optimization. See Patch 3 for details.
Patches 1 & 2 add a new coroutine API called qemu_coroutine_entered() for checking whether a coroutine is currently "entered". This makes it possible to avoid re-entering coroutines recursively. Stefan Hajnoczi (3): coroutine: add qemu_coroutine_entered() function test-coroutine: test qemu_coroutine_entered() linux-aio: fix re-entrant completion processing block/linux-aio.c | 9 ++++++--- include/qemu/coroutine.h | 13 +++++++++++++ tests/test-coroutine.c | 42 ++++++++++++++++++++++++++++++++++++++++++ util/qemu-coroutine.c | 5 +++++ 4 files changed, 66 insertions(+), 3 deletions(-) -- 2.7.4