Re: [PATCH 1/3] Refactor AIO interface to allow other AIO implementations

Daniel P. Berrange
2008-04-17T19:38:07Z

On Thu, Apr 17, 2008 at 02:26:50PM -0500, Anthony Liguori wrote:
> Posix AIO, especially as used by QEMU, is not very efficient for disk IO.
> This patch introduces an AIO abstract to allow multiple AIO implements to be
> used. We can't simply replace posix-aio by linux-aio because linux-aio only
> works on some filesystems and only with files opened with O_DIRECT.
>
> This patch adds a command line option (-aio) to select the AIO implementation
> to be used. It avoids code motion to allow for easy review. The next patch
> separates out the posix-aio implementation.

This is not a very pleasant user experiance. They can not & should not be
expected to figure out which AIO impl works with their particular filesystem.
If the linux-aio impl doesn't work in some cases, then the code should detect
these and automatically fallback to posix-aio. The user should not have to
use a -aio flag to make it work.

Dan.
--
|: Red Hat, Engineering, Boston -o- http://people.redhat.com/berrange/ :|
|: http://libvirt.org -o- http://virt-manager.org -o- http://ovirt.org :|
|: http://autobuild.org -o- http://search.cpan.org/~danberr/ :|
|: GnuPG: 7D3B9505 -o- F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505 :|