Generally bring in additional sf_buf improvements from FreeBSD-5. Separate
authorMatthew Dillon <dillon@dragonflybsd.org>
Mon, 29 Mar 2004 15:46:21 +0000 (15:46 +0000)
committerMatthew Dillon <dillon@dragonflybsd.org>
Mon, 29 Mar 2004 15:46:21 +0000 (15:46 +0000)
commitb4caac98df9f95f5a2420df62dad5299ac17ab6f
treed92e54014de44e9a6b3a34f736f0e0f41d7d2f7c
parent9a0222acebf4e7e28f3d2650a674332f99b0ea21
Generally bring in additional sf_buf improvements from FreeBSD-5.  Separate
the wiring used by sendfile into its own mbuf_ext support code and remove it
from the sf_buf code.  Alan Cox's uiomove_fromphys() was expecting to use
the cleaner version of sf_buf.  This fixes a long standing bug related to
multiple mbuf refs in the sendfile() code and also fixes recent bugs
introduced to the PIPE code from the importation of uiomove_fromphys() (due
to differences in the sf_buf API).  The sf_buf API is now more normalized
towards FBSD-5.

Note that the mbuf_ext API has not changed, and is very differnt from
FBSD-5 in regards to handling multiple references.  Introduce some temporary
hacks to sf_buf to get around the fact which will be pulled when the
mbuf_ext API is updated later on.
sys/i386/i386/uio_machdep.c
sys/kern/kern_sfbuf.c
sys/kern/uipc_syscalls.c
sys/platform/pc32/i386/uio_machdep.c
sys/sys/sfbuf.h