Print this page
Send nfs_export_t to untraverse()
@@ -719,11 +719,11 @@
/*
* Traverse across the mountpoint and continue the
* climb on the mounted-on filesystem.
*/
- vp = untraverse(vp);
+ vp = untraverse(ne, vp);
exportdir = 0;
continue;
}
/*
@@ -908,21 +908,20 @@
/*
* Traverse backward across mountpoint from the
* root vnode of a filesystem to its mounted-on
* vnode.
- *
- * Callers to this function have confirmed the use of curzone is safe here.
*/
vnode_t *
-untraverse(vnode_t *vp)
+untraverse(nfs_export_t *ne, vnode_t *vp)
{
vnode_t *tvp, *nextvp;
+ vnode_t *zone_rootvp = ne->exi_root->exi_vp;
tvp = vp;
for (;;) {
- if (!(tvp->v_flag & VROOT) && !VN_IS_CURZONEROOT(tvp))
+ if (!(tvp->v_flag & VROOT) && !VN_CMP(tvp, zone_rootvp))
break;
/* lock vfs to prevent unmount of this vfs */
vfs_lock_wait(tvp->v_vfsp);