kernel - Introduce lightweight buffers
authorSamuel J. Greear <sjg@thesjg.com>
Tue, 9 Mar 2010 09:24:55 +0000 (02:24 -0700)
committerSamuel J. Greear <sjg@thesjg.com>
Thu, 18 Mar 2010 16:55:33 +0000 (10:55 -0600)
commit5c5185ae1c44d1e9a2eb9d6d55dd551a57aa9ef1
tree1fce1dca795e33339f7a0720a154ebc023d6b05e
parent27a3408efb4180a9c9540390d11303afad1bd2f0
kernel - Introduce lightweight buffers

 * Summary:
   The lightweight buffer (lwbuf) subsystem is effectively a reimplementation
   of the sfbuf (sendfile buffers) implementation. It was designed to be
   lighter weight than the sfbuf implementation when possible, on x86_64
   we use the DMAP and the implementation is -very- simple. It was also
   designed to be more SMP friendly.

 * Replace all consumption of sfbuf with lwbuf

 * Refactor sfbuf to act as an external refcount mechanism for sendfile(2),
   this will probably go away eventually as well.
34 files changed:
share/man/man9/Makefile
share/man/man9/lwbuf.9 [new file with mode: 0644]
sys/boot/common/help.common
sys/boot/common/loader.8
sys/boot/forth/loader-bootp.conf
sys/boot/forth/loader.conf
sys/cpu/i386/include/lwbuf.h [new file with mode: 0644]
sys/cpu/i386/misc/lwbuf.c [new file with mode: 0644]
sys/cpu/x86_64/include/lwbuf.h [new file with mode: 0644]
sys/cpu/x86_64/misc/lwbuf.c [new file with mode: 0644]
sys/kern/imgact_elf.c
sys/kern/kern_exec.c
sys/kern/kern_sfbuf.c
sys/kern/kern_subr.c
sys/kern/kern_umtx.c
sys/kern/kern_xio.c
sys/kern/subr_param.c
sys/kern/uipc_syscalls.c
sys/platform/pc32/conf/files
sys/platform/pc32/i386/genassym.c
sys/platform/pc32/i386/globals.s
sys/platform/pc32/include/globaldata.h
sys/platform/pc64/conf/files
sys/platform/vkernel/conf/files
sys/platform/vkernel/i386/genassym.c
sys/platform/vkernel/i386/global.s
sys/platform/vkernel/include/globaldata.h
sys/platform/vkernel/platform/copyio.c
sys/sys/exec.h
sys/sys/imgact.h
sys/sys/sfbuf.h
sys/vfs/tmpfs/tmpfs_vnops.c
sys/vm/vm_fault.c
sys/vm/vnode_pager.c