summaryrefslogtreecommitdiff
path: root/sys/kern/vnode_if.c
diff options
context:
space:
mode:
authorNiels Provos <provos@cvs.openbsd.org>2002-08-08 17:07:33 +0000
committerNiels Provos <provos@cvs.openbsd.org>2002-08-08 17:07:33 +0000
commit645bfcfc7a44cb3eef794f55a0f348cdbb48b20c (patch)
tree65348cbbc69a068876bfe2a31a3287f71b482d02 /sys/kern/vnode_if.c
parent3ab868adf3b73fcb169a2f03c12e12d299f6f672 (diff)
socket buf speedup from thorpej@netbsd, okay art@ ericj@:
Make insertion of data into socket buffers O(C): * Keep pointers to the first and last mbufs of the last record in the socket buffer. * Use the sb_lastrecord pointer in the sbappend*() family of functions to avoid traversing the packet chain to find the last record. * Add a new sbappend_stream() function for stream protocols which guarantee that there will never be more than one record in the socket buffer. This function uses the sb_mbtail pointer to perform the data insertion. Make TCP use sbappend_stream(). On a profiling run, this makes sbappend of a TCP transmission using a 1M socket buffer go from 50% of the time to .02% of the time. Thanks to Bill Sommerfeld and YAMAMOTO Takashi for their debugging assistance!
Diffstat (limited to 'sys/kern/vnode_if.c')
-rw-r--r--sys/kern/vnode_if.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/kern/vnode_if.c b/sys/kern/vnode_if.c
index 1c762730f66..f21f2334f5d 100644
--- a/sys/kern/vnode_if.c
+++ b/sys/kern/vnode_if.c
@@ -5,7 +5,7 @@
* Created from the file:
* OpenBSD: vnode_if.src,v 1.19 2002/02/22 20:37:45 drahn Exp
* by the script:
- * OpenBSD: vnode_if.sh,v 1.8 2001/02/26 17:34:18 art Exp
+ * OpenBSD: vnode_if.sh,v 1.10 2002/03/14 23:47:05 millert Exp
*/
/*