From: Jens Axboe <axboe@kernel.dk>
To: Daniel Ehrenberg <dehrenberg@google.com>
Cc: Jeff Moyer <jmoyer@redhat.com>,
linux-kernel@vger.kernel.org, linux-aio@kvack.org,
Andrew Morton <akpm@linux-foundation.org>
Subject: Re: Approaches to making io_submit not block
Date: Tue, 30 Aug 2011 16:32:08 -0600 [thread overview]
Message-ID: <4E5D64E8.7000102@kernel.dk> (raw)
In-Reply-To: <CAAK6Zt2C1646qwDiZ7sWheSWrnx2yrDtCE=+VTx7QNyh2bEz_g@mail.gmail.com>
On 2011-08-30 16:19, Daniel Ehrenberg wrote:
> On Tue, Aug 30, 2011 at 2:37 PM, Jens Axboe <axboe@kernel.dk> wrote:
>> On 2011-08-30 15:30, Jeff Moyer wrote:
>>> Daniel Ehrenberg <dehrenberg@google.com> writes:
>>>
>>>> Hi Jens, Jeff,
>>>>
>>>> I just sent a letter to LKML wondering about changes to io_submit that
>>>> I'm thinking of working on. Based on your past contributions to this
>>>> area, I'd really like to know what you think of this plan--how well it
>>>> matches with the existing design, the potential for inclusion in
>>>> upstream Linux, if you see problems.
>>>
>>> Hi, Dan,
>>>
>>> Thanks for taking the time to make AIO better! There is a mailing list
>>> for aio discussions: linux-aio@kvack.org, so please CC that in the
>>> future (I don't read lkml anymore).
>>>
>>> Right now I'm a bit inundated, so I can't give this a proper review.
>>> I should be able to free up some time in the next two weeks, though.
>>>
>>> In the mean time, you can google for suparna's retry-based aio patches.
>>> Specifically, take a look at how she used prepare_to_wait/finish_wait.
>>> If you haven't done any empirical tests to see where io_submit blocks,
>>> there is a sample systemtap script for that:
>>> http://sourceware.org/systemtap/examples/io/io_submit.stp
>>> Other attempts at non-blocking aio were off the deep end: fibrils and
>>> syslets. Fibrils didn't go anywhere because Ingo didn't like them (for
>>> good reason, they essentially introduced another scheduling layer).
>>> Syslets didn't go anywhere b/c they were insane (returned to the
>>> user-space process with a different PID, among other things!).
>>>
>>> If you do go forward in the meantime, you can likely use EIOCBRETRY
>>> instead of EAGAIN.
>>>
>>> I hope that helps!
>>
>> FWIW, I updated the buffered AIO retry patches some time after Suparna
>> droped them. By the date stamp in my branch, they are now 23 months
>> old... Anyway, at least it's more recent, you can find them here:
>>
>> http://git.kernel.dk/?p=linux-block.git;a=shortlog;h=refs/heads/aio-buffered
>>
>> --
>> Jens Axboe
>>
>>
> Thanks! Do you know why the patches weren't merged? I can't find much
> discussion about them.
Not quite sure, and after working on them and fixing thing up, I don't
even think they are that complex or intrusive (which I think otherwise
would've been the main objection). Andrew may know/remember.
--
Jens Axboe
next prev parent reply other threads:[~2011-08-30 22:32 UTC|newest]
Thread overview: 41+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-08-29 17:33 Approaches to making io_submit not block Daniel Ehrenberg
2011-08-30 5:32 ` Christoph Hellwig
2011-08-30 21:51 ` Daniel Ehrenberg
2011-08-31 5:26 ` Christoph Hellwig
2011-08-31 17:08 ` Andi Kleen
2011-08-31 21:00 ` Daniel Ehrenberg
2011-08-31 21:15 ` Andi Kleen
2011-09-01 4:18 ` Dave Chinner
2011-09-01 4:39 ` Andi Kleen
2011-09-01 6:54 ` Dave Chinner
2011-09-02 13:08 ` Ted Ts'o
2011-09-02 13:10 ` Christoph Hellwig
2011-09-01 3:39 ` Dave Chinner
2011-09-01 4:20 ` Christoph Hellwig
2011-08-30 7:02 ` Andi Kleen
[not found] ` <CAAK6Zt0Sh1GdEOb-tNf2FGXJs=e1Jbcqew13R_GdTqrv6vW97w@mail.gmail.com>
[not found] ` <x49k49uk2ox.fsf@segfault.boston.devel.redhat.com>
[not found] ` <4E5D5817.6040704@kernel.dk>
2011-08-30 22:19 ` Daniel Ehrenberg
2011-08-30 22:32 ` Jens Axboe [this message]
2011-08-30 22:41 ` Andrew Morton
2011-08-30 22:45 ` Daniel Ehrenberg
2011-08-30 22:54 ` Andrew Morton
2011-08-30 23:03 ` Jeremy Allison
2011-08-30 23:11 ` Andrew Morton
2011-08-31 11:04 ` Ulrich Drepper
2011-08-31 16:59 ` Jeremy Allison
2011-09-01 11:14 ` Ulrich Drepper
2011-09-01 15:58 ` Jeremy Allison
2011-09-01 16:04 ` Christoph Hellwig
2011-09-01 16:15 ` Jeremy Allison
2011-09-01 16:23 ` Christoph Hellwig
2011-09-01 16:31 ` Jeremy Allison
2011-09-01 16:34 ` Christoph Hellwig
2011-09-01 16:34 ` Jeremy Allison
2011-09-01 16:45 ` Christoph Hellwig
2011-09-01 16:57 ` Jeremy Allison
2011-08-31 5:34 ` Christoph Hellwig
2011-08-31 6:04 ` guy keren
2011-08-31 23:16 ` Daniel Ehrenberg
2011-08-31 23:48 ` guy keren
2011-08-31 23:59 ` Daniel Ehrenberg
2011-08-31 15:45 ` Gleb Natapov
2011-08-31 16:02 ` Avi Kivity
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=4E5D64E8.7000102@kernel.dk \
--to=axboe@kernel.dk \
--cc=akpm@linux-foundation.org \
--cc=dehrenberg@google.com \
--cc=jmoyer@redhat.com \
--cc=linux-aio@kvack.org \
--cc=linux-kernel@vger.kernel.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.