Messages in this thread |  | | Date | Thu, 3 Jun 1999 11:05:24 -0400 (EDT) | | From | Zach Brown <> | | Subject | Re: zero-copy TCP fileserving |
| |
On Thu, 3 Jun 1999, Bjorn Wesen wrote:
> Exactly - the server mmap()'s the file but never actually accesses any > data. The socket write buffer addresses are translated by the kernel and > the needed pages are read in (if not already in mem) subsequently and > locked as the sending progresses, but all that is done in the kernels MMU > context so there shouldn't be any need to access the original process > context.
why screw with any of that? sendfile() is quite good at this.
> Since the process sleeps while doing the write(), it cannot munmap or do > nasty things to the mapping I guess. But the above is probably more > complicated than it sounds :)
indeed it is, as davem mentioned. think about retransmits, threads, etc.
this all has been discussed (most recently at the expo ;)), work is in progress..
-- zach
- - - - - - 007 373 5963
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/
|  |