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

Bug#273605: libc6: Should provide kernel AIO support (rtkaio)



At Tue, 28 Sep 2004 12:15:58 +0200,
Christoph Hellwig wrote:
> > Recent versions of SuSE (e.g. SuSE 9.1, SLES 9) and Red Hat (RHEL 3AS,
> > Fedora Core >= 1) distributions provide a support library with glibc to
> > allow users to make use of the kernel's asynchronous IO interfaces.
> > This additional library offers a higher performing alternative to the
> > existing user-space only asynchronous IO support provided by librt.  The
> > kernel AIO support is made available via the 'librtkaio.so' shared
> > library, which is packaged an addon in the SuSE and Red Hat source RPMs
> > for glibc.
> 
> Note that we only support AIO for direct (unbuffered) I/O to regular
> files or block devices, but not AIO for networking or the normal
> buffered file I/O.  Thus I don't think this is worthwile, the few users
> for the specific subset we have (databases mostly) tend to be written to
> use RedHat or oracles libaio.

Agreed.  In the latest -mm tree, patches from AIO project are included
that can do buffered I/O, but that does not still have aio fsync.
It's sure 2.6.9-rc does not have such patches.

I guess RedHat and SuSE guys applied it for database applications.
Ulrich Drepper said the current librt's AIO has good POSIX
conformance.  I asked about this issue to libc-alpha, Ulrich just said
the kernel support is still insufficient.  It fascinates me there are
some area to work in the kernel side aio support.

I think debian gets the limited advantage to use rtkaio instead of the
current librt.  I guess once kernel side is completely ready,
librtkaio replaces the current userland librt implementation.

Regards,
-- gotom





Reply to: