Sure. But sendfile is not one of the fundamental UNIX operations...
It's a fundamental Linux interface and VFS-->networking interface.
An alloc_kiovec before and an free_kiovec after the actual call
and the memory overhaed of a kiobuf won't hurt so much that it stands
against a clean interface, IMHO.
This whole exercise is pointless unless it performs well.
The overhead _DOES_ matter, we've tested and profiled all of this with
full specweb99 runs, zerocopy ftp server loads, etc. Removing one
word of information from anything involved in these code paths makes
enormous differences. Have you run such tests with your suggested
kiobuf scheme?
Know what I really hate? People who are talking, "almost done", and
"designing" the "real solution" to a problem and have no code to show
for it. Ie. a total working implementation. Often they have not one
line of code to show.
Then the folks who actually get off their lazy asses and make
something real, which works, and in fact exceeded most of our personal
performance expectations, are the ones who are getting told that what
they did was crap.
What was the first thing out of people's mouths? Not "nice work", but
"I think writepage is ugly and an eyesore, I hope nobody seriously
considers this code for inclusion." Keep designing... like Linus
says, "show me the code".
Later,
David S. Miller
davem@redhat.com
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
Please read the FAQ at http://www.tux.org/lkml/