DragonFly BSD
DragonFly commits List (threaded) for 2010-03
[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]

git: kernel - Introduce lightweight buffers


From: Samuel Greear <sjg@xxxxxxxxxxxxxxxxxxxxxxx>
Date: Thu, 18 Mar 2010 15:58:27 -0700 (PDT)

commit 5c5185ae1c44d1e9a2eb9d6d55dd551a57aa9ef1
Author: Samuel J. Greear <sjg@thesjg.com>
Date:   Tue Mar 9 02:24:55 2010 -0700

    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.

Summary of changes:
 share/man/man9/Makefile                   |    1 +
 share/man/man9/lwbuf.9                    |  112 +++++++++++++++
 sys/boot/common/help.common               |    5 -
 sys/boot/common/loader.8                  |    6 -
 sys/boot/forth/loader-bootp.conf          |    1 -
 sys/boot/forth/loader.conf                |    1 -
 sys/cpu/i386/include/lwbuf.h              |   85 ++++++++++++
 sys/cpu/i386/misc/lwbuf.c                 |  203 ++++++++++++++++++++++++++++
 sys/cpu/x86_64/include/lwbuf.h            |   80 +++++++++++
 sys/cpu/x86_64/misc/lwbuf.c               |   97 +++++++++++++
 sys/kern/imgact_elf.c                     |   21 ++--
 sys/kern/kern_exec.c                      |   17 ++-
 sys/kern/kern_sfbuf.c                     |  209 +++++++----------------------
 sys/kern/kern_subr.c                      |   15 +-
 sys/kern/kern_umtx.c                      |   13 +-
 sys/kern/kern_xio.c                       |   35 +++---
 sys/kern/subr_param.c                     |   11 +--
 sys/kern/uipc_syscalls.c                  |   60 ++------
 sys/platform/pc32/conf/files              |    1 +
 sys/platform/pc32/i386/genassym.c         |    1 +
 sys/platform/pc32/i386/globals.s          |    3 +
 sys/platform/pc32/include/globaldata.h    |    4 +
 sys/platform/pc64/conf/files              |    1 +
 sys/platform/vkernel/conf/files           |    1 +
 sys/platform/vkernel/i386/genassym.c      |    1 +
 sys/platform/vkernel/i386/global.s        |    3 +
 sys/platform/vkernel/include/globaldata.h |    4 +
 sys/platform/vkernel/platform/copyio.c    |   18 ++--
 sys/sys/exec.h                            |    6 +-
 sys/sys/imgact.h                          |    2 +-
 sys/sys/sfbuf.h                           |   40 ++----
 sys/vfs/tmpfs/tmpfs_vnops.c               |    1 -
 sys/vm/vm_fault.c                         |   11 +-
 sys/vm/vnode_pager.c                      |   11 +-
 34 files changed, 751 insertions(+), 329 deletions(-)
 create mode 100644 share/man/man9/lwbuf.9
 create mode 100644 sys/cpu/i386/include/lwbuf.h
 create mode 100644 sys/cpu/i386/misc/lwbuf.c
 create mode 100644 sys/cpu/x86_64/include/lwbuf.h
 create mode 100644 sys/cpu/x86_64/misc/lwbuf.c

http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/5c5185ae1c44d1e9a2eb9d6d55dd551a57aa9ef1


-- 
DragonFly BSD source repository



[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]