zfsctl_snapdir_lookup: always clear VV_ROOT flag of snapshot's root VV_ROOT
Previosuly we did that only if the snapshot was mounted earlier, its root vnode got recycled and then we accessed it again. We never cleared the flag for a freshly mounted snapshot. That was very inconsistent and probably a source of some bugs. Or maybe that painted over some bugs which might get revealed now. We should consistently clear the flag because we try very hard to pretend that snapshots auto-mounted under .zfs are part of their original filesystem. In other words, we try to hide the fact that they are different filesystems / mountpoints. MFC after: 5 weeks
This commit is contained in:
parent
ff2e27e5bb
commit
cb68fd3513
@ -1098,6 +1098,7 @@ zfsctl_snapdir_lookup(ap)
|
||||
*/
|
||||
ASSERT(VTOZ(*vpp)->z_zfsvfs != zfsvfs);
|
||||
VTOZ(*vpp)->z_zfsvfs->z_parent = zfsvfs;
|
||||
(*vpp)->v_flag &= ~VROOT;
|
||||
}
|
||||
mutex_exit(&sdp->sd_lock);
|
||||
ZFS_EXIT(zfsvfs);
|
||||
|
Loading…
Reference in New Issue
Block a user