public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
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

  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