From: Anthony Liguori <anthony@codemonkey.ws>
To: qemu-devel@nongnu.org
Cc: Blue Swirl <blauwirbel@gmail.com>
Subject: Re: [Qemu-devel] [RFC 1/2] pci-dma-api-v1
Date: Sun, 30 Nov 2008 16:38:19 -0600 [thread overview]
Message-ID: <493315DB.5060102@codemonkey.ws> (raw)
In-Reply-To: <20081128185001.GD31011@random.random>
Andrea Arcangeli wrote:
> On Fri, Nov 28, 2008 at 07:59:13PM +0200, Blue Swirl wrote:
>
>> I don't know, here's a pointer:
>> http://lists.gnu.org/archive/html/qemu-devel/2008-08/msg00092.html
>>
>
> I'm in total agreement with it. The missing "proper vectored AIO
> operations" are bdrv_aio_readv/writev ;).
>
> I wonder how can possibly aio_readv/writev be missing in posix aio?
>
Because it sucks.
> 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?
I've already asked, Ulrich will not likely add this unless it first goes
into the Posix standard. It won't go into the Posix standard without an
existing implementation. Either way, we're talking about a multi-year
process.
We need our own thread-pool based AIO implementation.
> 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).
>
No, kernel-aio is more brain dead. io_submit may block if the
underlying file descriptor does not support asynchronous IO. There is
no way to detect this. This means the only safe way to use io_submit is
to call it from a thread, and to have a thread pool that can do multiple
io_submits in parallel.
Yes, that's ridiculous. There's a thread right now on
linux-aio@vger.kernel.org discussing the future of linux-aio. The
prevailing wisdom seems to be that linux-aio does not have a future.
Regards,
Anthony Liguori
next prev parent reply other threads:[~2008-11-30 22:38 UTC|newest]
Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-11-27 12:35 [Qemu-devel] [RFC 1/2] pci-dma-api-v1 Andrea Arcangeli
2008-11-27 12:43 ` [Qemu-devel] [RFC 2/2] bdrv_aio_readv/writev_em Andrea Arcangeli
2008-11-28 11:09 ` Jamie Lokier
2008-11-27 19:14 ` [Qemu-devel] [RFC 1/2] pci-dma-api-v1 Blue Swirl
2008-11-28 1:56 ` Andrea Arcangeli
2008-11-28 17:59 ` Blue Swirl
2008-11-28 18:50 ` Andrea Arcangeli
2008-11-28 19:03 ` Blue Swirl
2008-11-28 19:18 ` Jamie Lokier
2008-11-29 19:49 ` Avi Kivity
2008-11-30 17:20 ` Andrea Arcangeli
2008-11-30 22:31 ` Anthony Liguori
2008-11-30 18:04 ` Andrea Arcangeli
2008-11-30 17:41 ` [Qemu-devel] [RFC 1/1] pci-dma-api-v2 Andrea Arcangeli
2008-11-30 18:36 ` [Qemu-devel] " Blue Swirl
2008-11-30 19:04 ` Andrea Arcangeli
2008-11-30 19:11 ` Blue Swirl
2008-11-30 19:20 ` Andrea Arcangeli
2008-11-30 21:36 ` Blue Swirl
2008-11-30 22:54 ` Anthony Liguori
2008-11-30 22:50 ` [Qemu-devel] " Anthony Liguori
2008-12-01 9:41 ` Avi Kivity
2008-12-01 16:37 ` Anthony Liguori
2008-12-02 9:45 ` Avi Kivity
2008-11-30 22:38 ` Anthony Liguori [this message]
2008-11-30 22:51 ` [Qemu-devel] [RFC 1/2] pci-dma-api-v1 Jamie Lokier
2008-11-30 22:34 ` Anthony Liguori
2008-11-29 19:48 ` Avi Kivity
2008-11-30 17:29 ` Andrea Arcangeli
2008-11-30 20:27 ` Avi Kivity
2008-11-30 22:33 ` Andrea Arcangeli
2008-11-30 22:33 ` Anthony Liguori
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=493315DB.5060102@codemonkey.ws \
--to=anthony@codemonkey.ws \
--cc=blauwirbel@gmail.com \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).