diff options
author | rmacklem <rmacklem@FreeBSD.org> | 2015-04-30 12:39:24 +0000 |
---|---|---|
committer | rmacklem <rmacklem@FreeBSD.org> | 2015-04-30 12:39:24 +0000 |
commit | fba63dddeb47d7daf52036b191fc27d0b34cb02b (patch) | |
tree | 2eddb41071be4a6cf55f2041a43ee90ffc63440a /sys/fs/msdosfs/msdosfs_vfsops.c | |
parent | 64b7754f6bf764fc7c4f921916e19418075e80e9 (diff) | |
download | FreeBSD-src-fba63dddeb47d7daf52036b191fc27d0b34cb02b.zip FreeBSD-src-fba63dddeb47d7daf52036b191fc27d0b34cb02b.tar.gz |
MFC: r281562
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.
Diffstat (limited to 'sys/fs/msdosfs/msdosfs_vfsops.c')
-rw-r--r-- | sys/fs/msdosfs/msdosfs_vfsops.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/sys/fs/msdosfs/msdosfs_vfsops.c b/sys/fs/msdosfs/msdosfs_vfsops.c index 1165934..7c6d3ed 100644 --- a/sys/fs/msdosfs/msdosfs_vfsops.c +++ b/sys/fs/msdosfs/msdosfs_vfsops.c @@ -759,6 +759,7 @@ mountmsdosfs(struct vnode *devvp, struct mount *mp) mp->mnt_stat.f_fsid.val[1] = mp->mnt_vfc->vfc_typenum; MNT_ILOCK(mp); mp->mnt_flag |= MNT_LOCAL; + mp->mnt_kern_flag |= MNTK_USES_BCACHE; MNT_IUNLOCK(mp); if (pmp->pm_flags & MSDOSFS_LARGEFS) |