summaryrefslogtreecommitdiffstats
path: root/sys/fs/nullfs
diff options
context:
space:
mode:
authorrmacklem <rmacklem@FreeBSD.org>2015-04-15 20:16:31 +0000
committerrmacklem <rmacklem@FreeBSD.org>2015-04-15 20:16:31 +0000
commitad77d0b1c1c3c09a9bf76bebb397102d08ed35c6 (patch)
treebbc578ff440927019e13de747fa3256b9df8b2d7 /sys/fs/nullfs
parent98c2a4bca48582a25dbb01274fd65c9b8cd74058 (diff)
downloadFreeBSD-src-ad77d0b1c1c3c09a9bf76bebb397102d08ed35c6.zip
FreeBSD-src-ad77d0b1c1c3c09a9bf76bebb397102d08ed35c6.tar.gz
File systems that do not use the buffer cache (such as ZFS) must
use VOP_FSYNC() to perform the NFS server's Commit operation. This patch adds a mnt_kern_flag called MNTK_USES_BCACHE which is set by file systems that use the buffer cache. If this flag is not set, the NFS server always does a VOP_FSYNC(). This should be ok for old file system modules that do not set MNTK_USES_BCACHE, since calling VOP_FSYNC() is correct, although it might not be optimal for file systems that use the buffer cache. Reviewed by: kib MFC after: 2 weeks
Diffstat (limited to 'sys/fs/nullfs')
-rw-r--r--sys/fs/nullfs/null_vfsops.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/fs/nullfs/null_vfsops.c b/sys/fs/nullfs/null_vfsops.c
index fd3d385..618090b 100644
--- a/sys/fs/nullfs/null_vfsops.c
+++ b/sys/fs/nullfs/null_vfsops.c
@@ -199,7 +199,7 @@ nullfs_mount(struct mount *mp)
}
mp->mnt_kern_flag |= MNTK_LOOKUP_EXCL_DOTDOT;
mp->mnt_kern_flag |= lowerrootvp->v_mount->mnt_kern_flag &
- MNTK_SUSPENDABLE;
+ (MNTK_SUSPENDABLE | MNTK_USES_BCACHE);
MNT_IUNLOCK(mp);
mp->mnt_data = xmp;
vfs_getnewfsid(mp);
OpenPOWER on IntegriCloud