Am 06.11.2011 15:27, schrieb Avi Kivity: > On 10/20/2011 01:16 PM, Paolo Bonzini wrote: >> This does the first part of the conversion to coroutines, by >> wrapping bdrv_read implementations to take the read side of the >> rwlock. >> >> Drivers that implement bdrv_read rather than bdrv_co_readv can >> then benefit from asynchronous operation (at least if the underlying >> protocol supports it, which is not the case for raw-win32), even >> though they still operate with a bounce buffer. >> >> raw-win32 does not need the lock, because it cannot yield. >> nbd also doesn't probably, but better be safe. > > This patch (2914caa088e3fbbd) breaks autotest when a guest reboots after > install; instead of rebooting, the guest is stuck in the bootloader or > kernel. > > This was discovered in qemu-kvm, but applies to plain qemu too. The > commit above is broken, it's parent is good.
Does the autotest case use any of the block drivers that are changed by this patch? I would be surprised to learn that, but otherwise it doesn't make sense to me. block/bochs.c | 13 ++++++++++++- block/cloop.c | 13 ++++++++++++- block/cow.c | 13 ++++++++++++- block/dmg.c | 13 ++++++++++++- block/nbd.c | 13 ++++++++++++- block/parallels.c | 13 ++++++++++++- block/vmdk.c | 13 ++++++++++++- block/vpc.c | 13 ++++++++++++- block/vvfat.c | 13 ++++++++++++- Kevin