qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH 3/5] push down vector linearization to posix-aio


From: Anthony Liguori
Subject: Re: [Qemu-devel] [PATCH 3/5] push down vector linearization to posix-aio-compat.c
Date: Sun, 29 Mar 2009 16:01:26 -0500
User-agent: Thunderbird 2.0.0.21 (X11/20090320)

Christoph Hellwig wrote:
Make all AIO requests vectored and defer linearization until the actual
I/O thread.  This prepares for using native preadv/pwritev.

Also enables asynchronous direct I/O by handling that case in the I/O thread.

Win32 support is untested and uncompiled.  Then again I can't even find
a know to turn on win32 aio support.

It compiles for win32 but it breaks at this patch. Win32 doesn't actually support AIO. The code that's in #ifdefs has been dead for a long time. I just committed a patch to remove it to avoid future confusion. For the future, you can build/test win32 entirely in fedora by using the mingw32 packages and wine.

This bug is not limited to win32 though. It has to do with having a backend disk format that does not provide a proper aio implement (which suggests your new brv_aio_{readv,writev}_em at fault). You can reproduce on a normal Linux build by converting an existing image to a format like vmdk and then testing with that. It's not 100% reliable but 9 times out of 10 I don't get past the grub loader with this patch applied.

Regards,

Anthony Liguori

Qcow and qcow2 propably want to be adopted to directly deal with multi-segment
requests, but that can be implemented later.


Signed-off-by: Christoph Hellwig <address@hidden>




reply via email to

[Prev in Thread] Current Thread [Next in Thread]