On Fri, 15 Jul 2005, Jan Engelhardt wrote: > > > >This is why I want to get rid of sendfile(). It's a fundamentally broken > >interface. Really. In contrast, the pipe buffers _can_ be used for direct > >socket->file interfaces. > > How will userspace access these pipe buffers?
You can fill them from a user-space buffer with "write()", and you can read them into a user-space buffer with "read()". It's really a pipe. The idea of the pipe buffers is that you can _also_ send them to other file descriptors, or fill them from other file descriptors, without having to copy the data to/from user space. Linus --- See the example patch that I posted months ago (and that I referred to in my other email, here is that thing repeated in case you missed it): > For anybody interested in zero-copy work, here's a LWN write-up of some of > the original discussion: > > http://lwn.net/Articles/118750/ > > and my (very ugly) example patch can be found for example here: > > > http://groups-beta.google.com/group/linux.kernel/msg/782bd9e5cb647207?hl=en& > > (it's not a a complete implementation, but it shows how to go from a file > _to_ a pipe buffer, but not back to a file again). - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/