Re: [take33 10/10] kevent: Kevent based AIO (aio_sendfile()/aio_sendfile_path()).



On Wed, Jan 17, 2007 at 05:39:51PM +0300, Evgeniy Polyakov wrote:
On Wed, Jan 17, 2007 at 07:21:42PM +0530, Suparna Bhattacharya (suparna@xxxxxxxxxx) wrote:

Since you are implementing new APIs here, have you considered doing an
aio_sendfilev to be able to send a header with the data ?

It is doable, but why people do not like corking?
With Linux less than microsecond syscall overhead it is better and more
flexible solution, doesn't it?

That is what I used to think as well. However ...

The problem as I understand it now is not about bunching data together, but
of ensuring some sort of atomicity between the header and the data, when
there can be multiple outstanding aio requests on the same socket - i.e
ensuring strict ordering without other data coming in between, when data
to be sent is not already in cache, and in the meantime another sendfile
or aio write requests comes in for the same socket. Without having to lock
the socket when reading data from disk.

There are alternate ways to address this, aio_sendfilev is one of the options
I have heard people requesting.

Regards
Suparna


I'm not saying - 'no, there will not be any *v variants', just getting
more info.

Regards
Suparna

--
Evgeniy Polyakov

--
Suparna Bhattacharya (suparna@xxxxxxxxxx)
Linux Technology Center
IBM Software Lab, India

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



Relevant Pages

  • Re: Async Socket: How to tell when there is no more data.
    ... have written is a blocking type of code. ... If the server disconnects the ... socket then the client gets a received byte count of 0. ... > phase sends a fixed size header block, ...
    (microsoft.public.dotnet.languages.csharp)
  • Re: CAtlHttpClient Navigate()
    ... TCPWaitedTimeDelay registry setting parameter to control the number of ... of 4000 sockets and that was the point when we started seeing the Socket ... I suggest that the problem isn't in CAtlHttpClient, but more likely in the way your test harness is designed. ... After about 4000 requests we start getting a "WSAEADDRINUSE" ...
    (microsoft.public.vc.atl)
  • Re: web status display for long running program
    ... > I have a command line Python program ... ... > - I think I know how to listen on a socket, but not sure how to send ... if you try searching for "smallest web server" or something you'll ... Explorer needs you to read the header in its entirety, ...
    (comp.lang.python)
  • Re: 2.6.22-rc1-mm1 cifs_mount oops
    ... file requests time to exit from the cifs vfs). ... in various socket calls). ... sfrench at-sign us dot ibm dot com ...
    (Linux-Kernel)
  • Re: [take33 10/10] kevent: Kevent based AIO (aio_sendfile()/aio_sendfile_path()).
    ... aio_sendfilev to be able to send a header with the data? ... With Linux less than microsecond syscall overhead it is better and more ... or aio write requests comes in for the same socket. ... If we will hold socket lock after header is ...
    (Linux-Kernel)