git: fsync - Add sysctl to relax fsync requirements.

Matthew Dillon dillon at crater.dragonflybsd.org
Mon Aug 24 08:21:28 PDT 2009


commit 6f3d87c0090b53820d5f8ea1a7b2bbb8fd476abb
Author: Matthew Dillon <dillon at apollo.backplane.com>
Date:   Mon Aug 24 08:16:14 2009 -0700

    fsync - Add sysctl to relax fsync requirements.
    
    * sysctl vfs.hammer.fsync_mode (defaults to 0 == full fsync semantics).
    
    	0 -	full fsync semantics
    	1 -	asynchronous
    	2 -	synchronous fsync on close if fsync called prior to close
    	3 -	asynchronous fsync on close if fsync called prior to close
    	4 -	ignore fsync (30-second system sync takes care of it)
    
    * This is likely a temporary measure until HAMMER gets a REDO log.
      It is mainly to facilitate testing and to reduce the pounding
      disks take from pkgsrc bulk builds (pkg_add seems to insist on
      calling fsync() a lot for no reason).

Summary of changes:
 sys/vfs/hammer/hammer.h        |    3 ++
 sys/vfs/hammer/hammer_ondisk.c |    2 +-
 sys/vfs/hammer/hammer_vfsops.c |    3 ++
 sys/vfs/hammer/hammer_vnops.c  |   63 ++++++++++++++++++++++++++++++++++++++--
 4 files changed, 67 insertions(+), 4 deletions(-)

http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/6f3d87c0090b53820d5f8ea1a7b2bbb8fd476abb


-- 
DragonFly BSD source repository





More information about the Commits mailing list