|Subject:||Re: [Qemu-devel] Re: [RFC][PATCH] performance improvement for windows guests, running on top of virtio block device|
|Date:||Mon, 11 Jan 2010 08:00:57 -0600|
|User-agent:||Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:184.108.40.206) Gecko/20091209 Fedora/3.0-4.fc12 Lightning/1.0pre Thunderbird/3.0|
On 01/11/2010 07:47 AM, Christoph Hellwig wrote:
On Mon, Jan 11, 2010 at 03:13:53PM +0200, Avi Kivity wrote:As Dor points out, the call to virtio_blk_handle_output() wants to be before the test for pending, so we scan the ring as early as possibleIt could cause a race window where we add an entry to the ring after we run virtio_blk_handle_output, but before re-enabling the notification. But I think my variant of the patch that I just posted should deal with this in an even better way.
When we've disabled notifications, we should use any opportunity we have in userspace to check the rings to see if anything was added.
Bottom halves are run at the very end of the event loop which means that they're guaranteed to be the last thing run. idle bottom halves can be rescheduled without causing an infinite loop and do not affect the select timeout (which normal bottom halves do).
Regards, Anthony Liguori
|[Prev in Thread]||Current Thread||[Next in Thread]|