Changeset View
Changeset View
Standalone View
Standalone View
sys/contrib/openzfs/module/os/freebsd/zfs/zfs_ctldir.c
Show First 20 Lines • Show All 180 Lines • ▼ Show 20 Lines | sfs_vgetx(struct mount *mp, int flags, uint64_t parent_id, uint64_t id, | ||||
/* Allocate a new vnode/inode. */ | /* Allocate a new vnode/inode. */ | ||||
error = getnewvnode(tag, mp, vops, &vp); | error = getnewvnode(tag, mp, vops, &vp); | ||||
if (error != 0) { | if (error != 0) { | ||||
*vpp = NULL; | *vpp = NULL; | ||||
return (error); | return (error); | ||||
} | } | ||||
/* | /* | ||||
* Do not account the vnodes for the ZFS sfs; such the vnodes are not | |||||
* subject to the ARC pruning. | |||||
*/ | |||||
/* | |||||
* Exclusively lock the vnode vnode while it's being constructed. | * Exclusively lock the vnode vnode while it's being constructed. | ||||
*/ | */ | ||||
lockmgr(vp->v_vnlock, LK_EXCLUSIVE, NULL); | lockmgr(vp->v_vnlock, LK_EXCLUSIVE, NULL); | ||||
error = insmntque(vp, mp); | error = insmntque(vp, mp); | ||||
if (error != 0) { | if (error != 0) { | ||||
*vpp = NULL; | *vpp = NULL; | ||||
return (error); | return (error); | ||||
} | } | ||||
▲ Show 20 Lines • Show All 1,205 Lines • Show Last 20 Lines |