|
From: | Anthony Liguori |
Subject: | Re: [Qemu-devel] [patch] Fix block I/O hang. |
Date: | Wed, 12 Nov 2008 08:57:45 -0600 |
User-agent: | Thunderbird 2.0.0.17 (X11/20080925) |
Gerd Hoffmann wrote:
Anthony Liguori wrote:Gerd Hoffmann wrote:Hi, $subject says all. please apply, GerdUnder what circumstances? posix_aio_read() is only invoked from a select callback. This means there should be data available to be read.Well, there are *two* select loops: main_loop_wait() and qemu_aio_wait(). Calling sync block i/o functions from a i/o handler causes the two select loops run nested => boom.
Yeah, qemu_aio_wait needs to die. Can you resubmit your patch with a better description, and change the read() look in posix_aio_read() to consume as much data as possible before hitting EAGAIN?
Regards, Anthony Liguori
cheers, Gerd
[Prev in Thread] | Current Thread | [Next in Thread] |