aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRyan Moeller <[email protected]>2021-01-21 23:20:14 +0000
committerBrian Behlendorf <[email protected]>2021-01-23 15:40:43 -0800
commit1c943451031b3c437110ecbb2f6a56d6ae0caa9f (patch)
tree8e62fec3b24bae1ce5f231ee370977a4fd7a5acb
parent0e9bcd5d4fc9e34e3808fdcbae8ce547fd1668d5 (diff)
FreeBSD: upstream changes to VFS interface
Set VIRF_MOUNTPOINT flag on snapshot mountpoint. Authored-by: Mateusz Guzik <[email protected]> Reviewed-by: Brian Behlendorf <[email protected]> Signed-off-by: Ryan Moeller <[email protected]> Closes #11458
-rw-r--r--module/os/freebsd/spl/spl_vfs.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/module/os/freebsd/spl/spl_vfs.c b/module/os/freebsd/spl/spl_vfs.c
index 991a11fe2..09c840126 100644
--- a/module/os/freebsd/spl/spl_vfs.c
+++ b/module/os/freebsd/spl/spl_vfs.c
@@ -240,9 +240,11 @@ mount_snapshot(kthread_t *td, vnode_t **vpp, const char *fstype, char *fspath,
#endif
VI_LOCK(vp);
vp->v_iflag &= ~VI_MOUNT;
- VI_UNLOCK(vp);
-
+#ifdef VIRF_MOUNTPOINT
+ vn_irflag_set_locked(vp, VIRF_MOUNTPOINT);
+#endif
vp->v_mountedhere = mp;
+ VI_UNLOCK(vp);
/* Put the new filesystem on the mount list. */
mtx_lock(&mountlist_mtx);
TAILQ_INSERT_TAIL(&mountlist, mp, mnt_list);