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

cvs commit: src/sys/vfs/hammer hammer.h hammer_blockmap.c hammer_cursor.c hammer_object.c hammer_ondisk.c hammer_vnops.c


From: Matthew Dillon <dillon@xxxxxxxxxxxxxxxxxxxxxxx>
Date: Mon, 30 Jun 2008 19:08:58 -0700 (PDT)

dillon      2008/06/30 19:08:58 PDT

DragonFly src repository

  Modified files:
    sys/vfs/hammer       hammer.h hammer_blockmap.c 
                         hammer_cursor.c hammer_object.c 
                         hammer_ondisk.c hammer_vnops.c 
  Log:
  HAMMER 59G/Many: Stabilization pass (low memory issues)
  
  Make adjustments in an attempt to remove deadlocks from the pageout and
  buffer flushing paths when a system is low on memory.
  
  * Restructure the low level storage allocator to use layer2->append_off
    and to move the blockmap lock deeper into the routine, pass the buffer
    ops.
  
  * Do kmalloc()'s of critical structures accessed by the backend with
    M_USE_RESERVE.
  
  * Have hammer_vop_write() call bwillwrite() unconditionally, even if
    called from the pageout daemon.  Do not release or relock the vnode
    at all.
  
    Theoretically bwillwrite() in the pageout path should still allow
    strategy calls from the buf_daemon threads to proceed, and not deadlock.
  
  Reported-by: Gergo Szakal <bastyaelvtars@gmail.com>
  
  Revision  Changes    Path
  1.99      +1 -2      src/sys/vfs/hammer/hammer.h
  1.21      +130 -120  src/sys/vfs/hammer/hammer_blockmap.c
  1.34      +4 -0      src/sys/vfs/hammer/hammer_cursor.c
  1.80      +2 -1      src/sys/vfs/hammer/hammer_object.c
  1.64      +3 -2      src/sys/vfs/hammer/hammer_ondisk.c
  1.79      +32 -46    src/sys/vfs/hammer/hammer_vnops.c


http://www.dragonflybsd.org/cvsweb/src/sys/vfs/hammer/hammer.h.diff?r1=1.98&r2=1.99&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/vfs/hammer/hammer_blockmap.c.diff?r1=1.20&r2=1.21&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/vfs/hammer/hammer_cursor.c.diff?r1=1.33&r2=1.34&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/vfs/hammer/hammer_object.c.diff?r1=1.79&r2=1.80&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/vfs/hammer/hammer_ondisk.c.diff?r1=1.63&r2=1.64&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/vfs/hammer/hammer_vnops.c.diff?r1=1.78&r2=1.79&f=u



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