cvs commit: src/sys/conf files src/sys/sys buf.h iosched.h proc.h src/sys/kern kern_iosched.c vfs_bio.c vfs_syscalls.c vfs_vnops.c src/sys/vfs/ufs ffs_softdep.c

Matthew Dillon dillon at crater.dragonflybsd.org
Sat Jun 28 11:01:42 PDT 2008


dillon      2008/06/28 10:59:51 PDT

DragonFly src repository

  Modified files:
    sys/conf             files 
    sys/sys              buf.h proc.h 
    sys/kern             vfs_bio.c vfs_syscalls.c vfs_vnops.c 
    sys/vfs/ufs          ffs_softdep.c 
  Added files:
    sys/sys              iosched.h 
    sys/kern             kern_iosched.c 
  Log:
  Replace the bwillwrite() subsystem to make it more fair to processes.
  
  * Add new API functions, bwillread(), bwillwrite(), bwillinode() which
    the kernel calls when it intends to read, write, or make inode
    modifications.
  
  * Redo the backend.  Add bd_heatup() and bd_wait().  bd_heatup() heats up
    the buf_daemon, starting it flushing before we hit any blocking conditions
    (similar to the previous algorith).
  
  * The new bwill*() blocking functions no longer introduce escalating delays
    to keep the number of dirty buffers under control.  Instead it takes a page
    from HAMMER and estimates the load caused by the caller, then waits for a
    specific number of dirty buffers to complete their write I/O's before
    returning.  If the buffers can be retired quickly these functions will
    return more quickly.
  
  Revision  Changes    Path
  1.221     +1 -0      src/sys/conf/files
  1.49      +2 -1      src/sys/sys/buf.h
  1.120     +3 -0      src/sys/sys/proc.h
  1.106     +83 -138   src/sys/kern/vfs_bio.c
  1.133     +9 -9      src/sys/kern/vfs_syscalls.c
  1.58      +15 -4     src/sys/kern/vfs_vnops.c
  1.57      +1 -1      src/sys/vfs/ufs/ffs_softdep.c


http://www.dragonflybsd.org/cvsweb/src/sys/conf/files.diff?r1=1.220&r2=1.221&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/sys/buf.h.diff?r1=1.48&r2=1.49&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/sys/proc.h.diff?r1=1.119&r2=1.120&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/kern/vfs_bio.c.diff?r1=1.105&r2=1.106&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/kern/vfs_syscalls.c.diff?r1=1.132&r2=1.133&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/kern/vfs_vnops.c.diff?r1=1.57&r2=1.58&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/vfs/ufs/ffs_softdep.c.diff?r1=1.56&r2=1.57&f=u





More information about the Commits mailing list