Re: [PATCH] 2.5 port of aio-20020619 for raw devices

From: Jens Axboe (axboe@suse.de)
Date: Fri Sep 13 2002 - 08:44:04 EST


On Fri, Sep 13 2002, Suparna Bhattacharya wrote:
> On Thu, Sep 12, 2002 at 02:35:40PM -0400, Benjamin LaHaise wrote:
> > On Thu, Sep 12, 2002 at 02:21:08PM -0400, Shailabh Nagar wrote:
> > > I just did a rough port of the raw device part of the aio-20020619.diff
> > > over to 2.5.32 using the 2.5 aio API published so far. The changeset
> > > comments are below. The patch hasn't been tested. Its only guaranteed
> > > to compile.
> > >
> > > I'd like to reiterate that this is not a fork of aio kernel code
> > > development or any attempt to question Ben's role as maintainer ! This
> > > was only an exercise in porting to enable a comparison of the older
> > > (2.4) approach with whatever's coming soon.
> > >
> > > Comments are invited on all aspects of the design and implementation.
> >
> > The generic aio <-> kvec functions were found to not work well, and
> > the chunking code needs to actually pipeline data for decent io thruput.
> > Short story: the raw device code must be rewritten using the dio code
> > that akpm introduced.
>
> How async (degree on non-blocking nature of steps in the async state
> machine) do we want to be when we use the dio pipelining code ?
> (besides making the wait for dio completion bit async, of course)
>
> Some key places where we can potentially block are when mapping
> the user pages, as part of get_blocks, when alloc'ing a bio,
> when issuing submit_bio (i.e. waiting for the request pipeline
> to drain out or free up slots). I guess, at least the last one
> would be addressed ... not sure what the plans for the rest
> are.

alloc_bio non-blocking can be done by caller himself, submit_bio
non-blocking can be assured with BIO_RW_AHEAD.

-- 
Jens Axboe

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



This archive was generated by hypermail 2b29 : Sun Sep 15 2002 - 22:00:33 EST