From: Suparna Bhattacharya <suparna@in.ibm.com>
To: Linus Torvalds <torvalds@transmeta.com>
Cc: bcrl@redhat.com, linux-aio@kvack.org, linux-kernel@vger.kernel.org
Subject: Re: aio
Date: Thu, 20 Dec 2001 12:28:30 -0500 [thread overview]
Message-ID: <20011220122830.A1748@in.ibm.com> (raw)
In-Reply-To: <20011219.220247.101870714.davem@redhat.com> <Pine.LNX.4.33.0112192206400.19394-100000@penguin.transmeta.com>
In-Reply-To: <Pine.LNX.4.33.0112192206400.19394-100000@penguin.transmeta.com>; from torvalds@transmeta.com on Wed, Dec 19, 2001 at 10:09:40PM -0800
On Wed, Dec 19, 2001 at 10:09:40PM -0800, Linus Torvalds wrote:
> Could we get back on track, and possibly discuss the patches themselves,
> ok? We want _constructive_ criticism of the interfaces.
>
> I think it's clear that many people do want to have aio support. At least
Yes, to add to the lot, even though you probably don't need any more proof :)
we have at least 3 different products requiring this. Both for scalable
communications aio (large no. of connections) as well as file/disk aio.
In fact, one of the things that I've been worried about once 2.5 opened up
and the bio changes started flowing in (much as I was delighted to see
Jens' stuff finally getting integrated), was whether this would mean a
longer timeframe before we can hope to see aio in a distribution (which is
the question which I have to respond to our product groups about).
> as far as I'm concerned, that's not the reason I want to have public
> discussion. I want to make sure that the interfaces are good for aio
> users, and that the design isn't stupid.
>
My feeling about this is that we shouldn't necessarily need to
have the entire aio code in perfect shape and bring it in all in one shot.
The thing I like about the design is that it is quite possible to split
this up into smaller core patches and bring them in slowly. And I agree
with Ingo that we should be able to start stabilizing the basic internal
mechanisms or foundations on which aio is built before we freeze the
external interfaces. In fact, these two things could happen parallely.
So I was hoping that an evolutionary approach would work. In the current
design, the aio path is handled separately from the normal i/o paths, so the
impact on existing interfaces is less. It mainly affects aio users. So it
ought to be possible to integrate it in a way that doesn't hurt regular
operations, and it should be easier to change it once it is in without
breaking too many things.
Existing aio users on other platforms that I have come across seem to use
either POSIX aio (for file /disk aio) or completion port style interfaces
(mainly for communications aio), both of which seem to be possible with
Ben's implementation. One has to explicitly associate each i/o with the
completion queue (ctx), rather than associate an fd as a whole with it so
that all completion events on that fd come to the ctx. That should be OK.
Besides with async poll support we can have per-file readiness notification
as well. I was hoping for the async poll piece being available early to
exercise the top half or event handling side of aio, so we have scalable
select/poll support, so was focussing on that part to start with.
Your point about some critical discussion of the interfaces and the design
is well-taken. We have had a few discussions on the aio mailing and more on
irc about some aspects, but not quite a thorough out and out analysis of
pros and cons of the whole design. I just started writing some points here,
but then realized that it is going to take much longer, so decided to do
that while working with Ben on the documentation, and discuss more after
that.
Regards
Suparna
next prev parent reply other threads:[~2001-12-20 11:52 UTC|newest]
Thread overview: 101+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <20011218020456.A11541@redhat.com>
2001-12-18 16:50 ` Scheduler ( was: Just a second ) Linus Torvalds
2001-12-18 16:56 ` Rik van Riel
2001-12-18 17:18 ` Linus Torvalds
2001-12-18 19:04 ` Alan Cox
2001-12-18 21:02 ` Larry McVoy
2001-12-18 21:14 ` David S. Miller
2001-12-18 21:17 ` Larry McVoy
2001-12-18 21:19 ` Rik van Riel
2001-12-18 21:30 ` David S. Miller
2001-12-18 21:18 ` Rik van Riel
2001-12-19 17:44 ` IRC (was: Scheduler) Daniel Phillips
2001-12-19 17:51 ` Larry McVoy
2001-12-19 18:24 ` Daniel Phillips
2001-12-19 18:19 ` M. Edward (Ed) Borasky
2001-12-19 18:27 ` Daniel Phillips
2001-12-19 18:40 ` J Sloan
2001-12-19 16:50 ` Scheduler ( was: Just a second ) Daniel Phillips
[not found] ` <Pine.LNX.4.33.0112190859050.1872-100000@penguin.transmeta.com>
2001-12-19 18:57 ` aio Ben LaHaise
2001-12-19 19:29 ` aio Dan Kegel
2001-12-20 4:04 ` aio Benjamin LaHaise
2001-12-19 20:09 ` aio Daniel Phillips
2001-12-19 20:21 ` aio Davide Libenzi
[not found] ` <mailman.1008792601.3391.linux-kernel2news@redhat.com>
2001-12-19 20:23 ` aio Pete Zaitcev
2001-12-20 0:13 ` aio David S. Miller
2001-12-20 0:21 ` aio Benjamin LaHaise
2001-12-20 0:36 ` aio Andrew Morton
2001-12-20 0:55 ` aio H. Peter Anvin
2001-12-20 0:47 ` aio Davide Libenzi
2001-12-20 1:16 ` aio Bill Huey
2001-12-20 1:20 ` aio David S. Miller
2001-12-20 2:26 ` aio Bill Huey
2001-12-20 2:45 ` aio David S. Miller
2001-12-19 18:57 ` aio John Heil
2001-12-20 3:06 ` aio David S. Miller
2001-12-19 19:30 ` aio John Heil
2001-12-20 5:29 ` aio David S. Miller
2001-12-20 3:21 ` aio Bill Huey
2001-12-27 9:36 ` aio Martin Dalecki
2001-12-20 3:07 ` aio Bill Huey
2001-12-20 3:13 ` aio David S. Miller
2001-12-20 3:47 ` aio Benjamin LaHaise
2001-12-20 5:39 ` aio David S. Miller
2001-12-20 5:58 ` aio Benjamin LaHaise
2001-12-20 6:00 ` aio David S. Miller
2001-12-20 6:46 ` aio Mike Castle
2001-12-20 6:55 ` aio Robert Love
2001-12-20 7:13 ` aio Mike Castle
2001-12-20 7:01 ` aio David S. Miller
2001-12-20 7:27 ` aio Daniel Phillips
[not found] ` <Pine.LNX.4.33.0112201127400.2656-100000@localhost.localdomain>
2001-12-20 11:49 ` aio William Lee Irwin III
2001-12-20 16:32 ` aio Dan Kegel
2001-12-20 18:05 ` aio Davide Libenzi
2001-12-20 21:45 ` aio Lincoln Dale
2001-12-20 21:59 ` aio Linus Torvalds
2001-12-24 11:44 ` aio Gerold Jury
2001-12-20 23:02 ` aio Lincoln Dale
2001-12-21 17:24 ` aio Alan Cox
2001-12-21 17:16 ` aio Benjamin LaHaise
2001-12-23 5:35 ` aio Bill Huey
2001-12-20 14:38 ` aio Luigi Genoni
2001-12-20 17:26 ` aio Henning Schmiedehausen
2001-12-20 20:04 ` aio M. Edward (Ed) Borasky
2001-12-20 23:53 ` aio David S. Miller
2001-12-21 0:28 ` Offtopic Java/C# [Re: aio] Bill Huey
[not found] ` <mailman.1008817860.10606.linux-kernel2news@redhat.com>
2001-12-20 5:16 ` aio Pete Zaitcev
2001-12-20 16:16 ` aio Dan Kegel
2001-12-21 11:44 ` aio Gerold Jury
2001-12-21 13:48 ` aio Ingo Molnar
2001-12-21 15:27 ` aio Gerold Jury
2001-12-24 11:08 ` aio Gerold Jury
2001-12-20 17:24 ` aio Henning Schmiedehausen
2001-12-20 2:37 ` aio Cameron Simpson
2001-12-20 2:47 ` aio David S. Miller
2001-12-20 2:52 ` aio Cameron Simpson
2001-12-20 2:58 ` aio David S. Miller
2001-12-20 5:47 ` aio Linus Torvalds
2001-12-20 5:57 ` aio David S. Miller
2001-12-20 5:59 ` aio Benjamin LaHaise
2001-12-20 6:02 ` aio David S. Miller
2001-12-20 6:07 ` aio Benjamin LaHaise
2001-12-20 6:12 ` aio David S. Miller
2001-12-20 6:23 ` aio Linus Torvalds
2001-12-20 10:18 ` aio Ingo Molnar
2001-12-20 18:20 ` aio Robert Love
2001-12-20 22:30 ` aio Cameron Simpson
2001-12-20 22:46 ` aio Benjamin LaHaise
2001-12-20 6:09 ` aio Linus Torvalds
2001-12-20 17:28 ` Suparna Bhattacharya [this message]
[not found] ` <mailman.1008816001.10138.linux-kernel2news@redhat.com>
2001-12-20 5:07 ` aio Pete Zaitcev
2001-12-20 5:10 ` aio Cameron Simpson
2001-12-21 17:28 ` aio Alan Cox
2001-12-23 5:46 ` aio Bill Huey
2001-12-23 6:34 ` aio Dan Kegel
2001-12-23 18:43 ` aio Davide Libenzi
2001-12-26 20:42 ` Java and Flam^H^H^H^H AIO (was: aio) Daniel Phillips
2001-12-18 19:11 ` Scheduler ( was: Just a second ) Mike Galbraith
2001-12-18 19:15 ` Rik van Riel
2001-12-18 22:32 ` in defense of the linux-kernel mailing list Ingo Molnar
2001-12-18 17:55 ` Scheduler ( was: Just a second ) Davide Libenzi
2001-12-18 19:43 ` Alexander Viro
2001-12-20 2:56 aio Mikael Pettersson
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=20011220122830.A1748@in.ibm.com \
--to=suparna@in.ibm.com \
--cc=bcrl@redhat.com \
--cc=linux-aio@kvack.org \
--cc=linux-kernel@vger.kernel.org \
--cc=torvalds@transmeta.com \
/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