Lines Matching full:dvp

80 unionfs_lookup_isroot(struct componentname *cnp, struct vnode *dvp)  in unionfs_lookup_isroot()  argument
84 if (dvp == NULL) in unionfs_lookup_isroot()
86 if ((dvp->v_vflag & VV_ROOT) != 0) in unionfs_lookup_isroot()
91 return (vfs_lookup_isroot(ndp, dvp)); in unionfs_lookup_isroot()
98 struct vnode *dvp, *udvp, *ldvp, *vp, *uvp, *lvp, *dtmpvp; in unionfs_lookup() local
113 dvp = ap->a_dvp; in unionfs_lookup()
114 dunp = VTOUNIONFS(dvp); in unionfs_lookup()
125 if (dvp->v_type != VDIR) in unionfs_lookup()
132 (dvp->v_mount->mnt_flag & MNT_RDONLY) && in unionfs_lookup()
138 * is already in-flight against dvp. This is done because we may in unionfs_lookup()
139 * end up dropping dvp's lock to look up a lower vnode or to create in unionfs_lookup()
155 error = unionfs_set_in_progress_flag(dvp, UNIONFS_LOOKUP_IN_PROGRESS); in unionfs_lookup()
180 unionfs_forward_vop_finish(dvp, dtmpvp, lkflags); in unionfs_lookup()
186 * reference, or (if dvp was reclaimed) we'll need to drop in unionfs_lookup()
191 dunp = VTOUNIONFS(dvp); in unionfs_lookup()
198 VOP_UNLOCK(dvp); in unionfs_lookup()
208 vn_lock(dvp, LK_EXCLUSIVE | LK_RETRY); in unionfs_lookup()
228 VOP_UNLOCK(dvp); in unionfs_lookup()
242 unionfs_forward_vop_finish(dvp, ldvp, lkflags)) { in unionfs_lookup()
255 *(ap->a_vpp) = dvp; in unionfs_lookup()
256 vref(dvp); in unionfs_lookup()
265 vn_lock(dvp, LK_EXCLUSIVE | LK_RETRY); in unionfs_lookup()
266 if (VN_IS_DOOMED(dvp)) in unionfs_lookup()
282 if (unionfs_forward_vop_finish(dvp, udvp, lkflags)) { in unionfs_lookup()
294 *(ap->a_vpp) = dvp; in unionfs_lookup()
295 vref(dvp); in unionfs_lookup()
344 !(dvp->v_mount->mnt_flag & MNT_RDONLY) && in unionfs_lookup()
347 error = unionfs_nodeget(dvp->v_mount, NULL, lvp, dvp, &vp, in unionfs_lookup()
362 error = unionfs_mkshadowdir(dvp, vp, cnp, td); in unionfs_lookup()
391 error = unionfs_nodeget(dvp->v_mount, uvp, lvp, in unionfs_lookup()
392 dvp, &vp, cnp); in unionfs_lookup()
400 if (VN_IS_DOOMED(dvp) || VN_IS_DOOMED(vp)) { in unionfs_lookup()
409 cache_enter(dvp, vp, cnp); in unionfs_lookup()
418 !VN_IS_DOOMED(dvp)) in unionfs_lookup()
419 cache_enter(dvp, NULL, cnp); in unionfs_lookup()
422 unionfs_clear_in_progress_flag(dvp, UNIONFS_LOOKUP_IN_PROGRESS); in unionfs_lookup()
1629 struct vnode *dvp; in unionfs_mkdir() local
1641 dvp = ap->a_dvp; in unionfs_mkdir()
1642 dunp = VTOUNIONFS(dvp); in unionfs_mkdir()
1663 if (__predict_false(unionfs_forward_vop_finish(dvp, udvp, in unionfs_mkdir()
1669 error = unionfs_nodeget(dvp->v_mount, uvp, NULL, in unionfs_mkdir()
1670 dvp, ap->a_vpp, cnp); in unionfs_mkdir()
1719 * We need to keep dvp and vp's upper vnodes locked in unionfs_rmdir()
1730 * ERELOOKUP to re-drive the lookup in case the dvp-> in unionfs_rmdir()
2789 struct vnode *dvp, *vp, **vpp, *lvp, *uvp, *tvp, *tdvp, *tempvp; in unionfs_vput_pair() local
2793 dvp = ap->a_dvp; in unionfs_vput_pair()
2801 dunp = VTOUNIONFS(dvp); in unionfs_vput_pair()
2866 vrele(dvp); in unionfs_vput_pair()
2878 error = unionfs_nodeget(mp, uvp, lvp, dvp, &tempvp, NULL); in unionfs_vput_pair()