git: kernel - Refactor buffer cache code in preparation for vm_page repurposing

Matthew Dillon dillon at crater.dragonflybsd.org
Fri Jul 22 11:39:44 PDT 2016


commit dc6a6bd20a36f4a0f9c2ef312218563c537660ca
Author: Matthew Dillon <dillon at apollo.backplane.com>
Date:   Mon Jul 18 11:44:11 2016 -0700

    kernel - Refactor buffer cache code in preparation for vm_page repurposing
    
    * Keep buffer_map but no longer use vm_map_findspace/vm_map_delete to manage
      buffer sizes.  Instead, reserve MAXBSIZE of unallocated KVM for each buffer.
    
    * Refactor the buffer cache management code.  bufspace exhaustion now has
      hysteresis, bufcount works just about the same.
    
    * Start work on the repurposing code (currently disabled).

Summary of changes:
 sys/bus/cam/scsi/scsi_da.c               |   2 +-
 sys/gnu/vfs/ext2fs/ext2_readwrite.c      |   2 +-
 sys/kern/vfs_bio.c                       | 524 +++++++++++++++++--------------
 sys/kern/vfs_vnops.c                     |   2 +-
 sys/platform/pc64/x86_64/machdep.c       |  20 +-
 sys/platform/vkernel64/x86_64/autoconf.c |  14 +-
 sys/sys/buf.h                            |   4 +-
 sys/sys/param.h                          |  23 +-
 sys/vfs/devfs/devfs_vnops.c              |   2 +-
 sys/vfs/hammer/hammer_vnops.c            |   4 +-
 sys/vfs/hammer2/hammer2.h                |   2 +-
 sys/vfs/hammer2/hammer2_vnops.c          |   2 +-
 sys/vfs/isofs/cd9660/cd9660_vnops.c      |   2 +-
 sys/vfs/nfs/nfs_bio.c                    |   2 +-
 sys/vfs/ufs/ffs_alloc.c                  |   2 +-
 sys/vfs/ufs/ffs_balloc.c                 |   2 +-
 sys/vfs/ufs/ffs_subr.c                   |   2 +-
 sys/vm/vm_page.c                         |  45 +++
 sys/vm/vm_page.h                         |   2 +
 19 files changed, 366 insertions(+), 292 deletions(-)

http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/dc6a6bd20a36f4a0f9c2ef312218563c537660ca


-- 
DragonFly BSD source repository


More information about the Commits mailing list