kernel - Optimize sync and msync for tmpfs and nfs
authorMatthew Dillon <dillon@apollo.backplane.com>
Fri, 11 Oct 2013 07:00:39 +0000 (00:00 -0700)
committerMatthew Dillon <dillon@apollo.backplane.com>
Fri, 11 Oct 2013 07:00:39 +0000 (00:00 -0700)
commitfd2da346d8d75955f03246d811568a9f680db45e
treec388200e9ce8a08c4010927c269d59829bf92c0b
parenteddc656a4e9735e3069a4d449d65ff5bca9ac645
kernel - Optimize sync and msync for tmpfs and nfs

* Flesh-out the vfs_sync API and implement vhold/vdrop callbacks
  (used by NFS).

* Use MNTK_THR_SYNC in tmpfs and finish implementing it in nfs.  This
  will optimize sync and msync for these filesystems.

* In both cases inode attributes are either synchronous or don't involve
  any VFS work to flush, so we don't have to use VISDIRTY.
sys/kern/vfs_sync.c
sys/sys/vnode.h
sys/vfs/nfs/nfs_subs.c
sys/vfs/nfs/nfs_vfsops.c
sys/vfs/nfs/nfs_vnops.c
sys/vfs/tmpfs/tmpfs_vfsops.c
sys/vm/vm_object.c