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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox