blob: 42761aabe061c91e985af3c10adb0553dae39a88 (
plain) (
blame)
1
2
3
4
5
|
The bug occurs due to how coroutines are managed during asynchronous I/O operations in QEMU's block driver. When `bdrv_read` is called recursively in a loop, it can lead to a situation where `bdrv_co_io_em_complete` is invoked before `qemu_coroutine_yield`, causing the coroutine to re-enter itself recursively. This results in a failure with the message "co-routine re-entered recursively."
The issue arises from the runtime behavior of the coroutines and how they interact during I/O completion, rather than a specific instruction or syscall error.
runtime
|