lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20110830154157.d802d097.akpm@linux-foundation.org>
Date:	Tue, 30 Aug 2011 15:41:57 -0700
From:	Andrew Morton <akpm@...ux-foundation.org>
To:	Jens Axboe <axboe@...nel.dk>
Cc:	Daniel Ehrenberg <dehrenberg@...gle.com>,
	Jeff Moyer <jmoyer@...hat.com>, linux-kernel@...r.kernel.org,
	linux-aio@...ck.org
Subject: Re: Approaches to making io_submit not block

On Tue, 30 Aug 2011 16:32:08 -0600
Jens Axboe <axboe@...nel.dk> wrote:

> On 2011-08-30 16:19, Daniel Ehrenberg wrote:
> > On Tue, Aug 30, 2011 at 2:37 PM, Jens Axboe <axboe@...nel.dk> wrote:
> >> On 2011-08-30 15:30, Jeff Moyer wrote:
> >>> Daniel Ehrenberg <dehrenberg@...gle.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@...ck.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.

Boy, that was a long time ago.  I was always unhappy with the patches
because of the amount of additional code/complexity they added.

Then the great syslets/threadlets design session happened and it was
expected that such a facility would make special async handling for AIO
unnecessary.  Then syslets/threadlets didn't happen.

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ