> 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/