Re: [Kiobuf-io-devel] RFC: Kernel mechanism: Compound event wait

Marcelo Tosatti
2001-02-06T22:06:24Z

On Tue, 6 Feb 2001, Linus Torvalds wrote:

>
>
> On Tue, 6 Feb 2001, Manfred Spraul wrote:
> > Jens Axboe wrote:
> > >
> > > > Several kernel functions need a "dontblock" parameter (or a callback, or
> > > > a waitqueue address, or a tq_struct pointer).
> > >
> > > We don't even need that, non-blocking is implicitly applied with READA.
> > >
> > READA just returns - I doubt that the aio functions should poll until
> > there are free entries in the request queue.
>
> The aio functions should NOT use READA/WRITEA. They should just use the
> normal operations, waiting for requests. The things that makes them
> asycnhronous is not waiting for the requests to _complete_. Which you can
> already do, trivially enough.

Reading write(2):

EAGAIN Non-blocking I/O has been selected using O_NONBLOCK and there was
no room in the pipe or socket connected to fd to write the data
immediately.

I see no reason why "aio function have to block waiting for requests".

_Why_ they do ?