qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [RFC 1/2] pci-dma-api-v1


From: Anthony Liguori
Subject: Re: [Qemu-devel] [RFC 1/2] pci-dma-api-v1
Date: Sun, 30 Nov 2008 16:31:05 -0600
User-agent: Thunderbird 2.0.0.17 (X11/20080925)

Jamie Lokier wrote:
Blue Swirl wrote:
 I wonder how can possibly aio_readv/writev be missing in posix aio?
 Unbelievable. It'd be totally trivial to add those to glibc, much
 easier infact than to pthread_create by hand, but how can we add a
 dependency on a certain glibc version? Ironically it'll be more
 user-friendly to add dependency on linux kernel-aio implementation
 that is already available for ages and it's guaranteed to run faster
 (or at least not slower).
There's also lio_listio that provides for vectored AIO.

I think lio_listio is the missing aio_readv/writev.

It's more versatile, and that'll by why POSIX never bothered with
aio_readv/writev.

No.  lio_listio is a batch submission mechanism, not an operation.

Each request maintains the same behavior as if they were submitted independently. This means if you're doing a write operation and you submit a vectored request via lio_listio, each portion of the vector has to complete before the other one.

But most importantly, pthreads doesn't use readv/writev to implement lio_listio as has been mentioned elsewhere.

Regards,

Anthony Liguori

Doesn't explain why they didn't _start_ with aio_readv before
inventing lio_listio, but there you go.  Unix history.

-- Jamie







reply via email to

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