kernel - Do a better job with the filesystem background sync
authorMatthew Dillon <dillon@apollo.backplane.com>
Mon, 10 Jan 2011 23:31:29 +0000 (15:31 -0800)
committerMatthew Dillon <dillon@apollo.backplane.com>
Mon, 10 Jan 2011 23:31:29 +0000 (15:31 -0800)
commit28271622aa9fc15ee04275cd2fbca1f3dccba1e3
tree9d6bc9d82d02c7ce23daef77ac55b0bdc8265e06
parentf0eb7ceee370e1b2a3aeb9fee9c9a3528c0eed93
kernel - Do a better job with the filesystem background sync

* Adjust code for MNT_LAZY, MNT_NOWAIT, and MNT_WAITOK to reflect
  the fact that they are three different flags and not enumeration
  constants.

* HAMMER now sets VMSC_ONEPASS for MNT_LAZY syncs (background filesystem
  sync).  This generally reduces instances where the background sync
  winds up running continuously when heavy filesystem ops saturate
  the disk.  Fewer vnodes dirtied after the sync is initiated will get
  caught up in the sync.
13 files changed:
sys/kern/vfs_subr.c
sys/kern/vfs_sync.c
sys/kern/vfs_syscalls.c
sys/sys/mount.h
sys/vfs/gnu/ext2fs/ext2_vfsops.c
sys/vfs/gnu/ext2fs/ext2_vnops.c
sys/vfs/hammer/hammer_ondisk.c
sys/vfs/msdosfs/msdosfs_vfsops.c
sys/vfs/nfs/nfs_vfsops.c
sys/vfs/nwfs/nwfs_vfsops.c
sys/vfs/smbfs/smbfs_vfsops.c
sys/vfs/ufs/ffs_softdep.c
sys/vfs/ufs/ffs_vfsops.c