Lines Matching defs:fvp
141 * . fvp (from vnode),
151 * . fdvp, fvp, tdvp, and tvp are referenced,
152 * . fdvp and fvp are unlocked, and
157 * . fdvp, fvp, tdvp, and tvp (if nonnull) are unreferenced, and
175 struct vnode *fvp = ap->a_fvp;
184 KASSERT(fvp != NULL);
191 /* KASSERT(VOP_ISLOCKED(fvp) != LK_EXCLUSIVE); */
217 vrele(fvp);
249 struct vnode *fvp = NULL, *tvp = NULL;
282 fdvp, fcnp, fde, &fvp,
290 KASSERT(fvp != NULL);
292 KASSERT(VOP_ISLOCKED(fvp) == LK_EXCLUSIVE);
301 if (fvp == tvp) {
303 if (fvp->v_type == VDIR)
318 fdvp, fcnp, fde, fvp, &tvp_new_nlink);
320 VN_KNOTE(fvp,
325 KASSERT(fvp != tvp);
337 if (fvp->v_type == VDIR && tvp->v_type == VDIR)
341 else if (fvp->v_type == VDIR && tvp->v_type != VDIR)
343 else if (fvp->v_type != VDIR && tvp->v_type == VDIR)
349 KASSERT((fvp->v_type == VDIR) == (tvp->v_type == VDIR));
355 error = ops->gro_rename_check_possible(mp, fdvp, fvp, tdvp, tvp);
358 error = ops->gro_rename_check_permitted(mp, cred, fdvp, fvp, tdvp, tvp);
359 error = kauth_authorize_vnode(cred, KAUTH_VNODE_DELETE, fvp, fdvp,
370 fdvp, fcnp, fde, fvp,
377 genfs_rename_knote(fdvp, fvp, tdvp, tvp, tvp_new_nlink);
380 genfs_rename_exit(ops, mp, fdvp, fvp, tdvp, tvp);
391 genfs_rename_knote(struct vnode *fdvp, struct vnode *fvp,
398 KASSERT(fvp != NULL);
400 KASSERT(fdvp != fvp);
402 KASSERT(tdvp != fvp);
404 KASSERT(fvp != tvp);
406 KASSERT(VOP_ISLOCKED(fvp) == LK_EXCLUSIVE);
410 directory_p = (fvp->v_type == VDIR);
421 VN_KNOTE(fvp, NOTE_RENAME);
443 genfs_rename_cache_purge(struct vnode *fdvp, struct vnode *fvp,
448 KASSERT(fvp != NULL);
450 KASSERT(fdvp != fvp);
452 KASSERT(tdvp != fvp);
454 KASSERT(fvp != tvp);
464 if (fvp->v_type == VDIR)
465 cache_purge(fvp);
488 * identical are {fdvp, tdvp} and {fvp, tvp}.
554 struct vnode *fvp, *tvp;
578 error = ops->gro_lookup(mp, dvp, fcnp, fde_ret, &fvp);
582 KASSERT(fvp != NULL);
585 if (fvp == dvp) {
589 KASSERT(fvp != dvp);
612 vn_lock(fvp, LK_EXCLUSIVE | LK_RETRY);
613 KASSERT(fvp->v_mount == mp);
615 if ((fvp->v_type == VDIR) && (fvp->v_mountedhere != NULL)) {
620 if ((tvp != NULL) && (tvp != fvp)) {
631 KASSERT(VOP_ISLOCKED(fvp) == LK_EXCLUSIVE);
634 *fvp_ret = fvp;
638 fail4: if ((tvp != NULL) && (tvp != fvp))
640 fail3: VOP_UNLOCK(fvp);
643 fail2: vrele(fvp);
661 struct vnode *fvp, *tvp;
693 fdvp, fcnp, false, fde_ret, &fvp);
697 fdvp, fcnp, false, fde_ret, &fvp,
702 KASSERT(fvp != NULL);
707 if (fvp == intermediate_node) {
708 genfs_rename_exit(ops, mp, fdvp, fvp, tdvp, tvp);
713 *fvp_ret = fvp;
965 * On entry, everything is locked, and fvp and tvp referenced.
967 * On exit, everything is unlocked, and fvp and tvp are released.
972 struct vnode *fdvp, struct vnode *fvp,
980 KASSERT(fvp != NULL);
981 KASSERT(fdvp != fvp);
984 KASSERT(tdvp != fvp);
987 KASSERT(VOP_ISLOCKED(fvp) == LK_EXCLUSIVE);
990 if ((tvp != NULL) && (tvp != fvp))
992 VOP_UNLOCK(fvp);
997 vrele(fvp);
1085 struct vnode *fvp, uid_t fuid,
1092 KASSERT(fvp != NULL);
1094 KASSERT(fdvp != fvp);
1096 KASSERT(tdvp != fvp);
1098 KASSERT(fvp != tvp);
1101 KASSERT(fdvp->v_mount == fvp->v_mount);
1105 KASSERT(VOP_ISLOCKED(fvp) == LK_EXCLUSIVE);
1118 * target directory to add or change an entry. Also, if fvp is
1126 if (fvp->v_type == VDIR) {
1127 error = VOP_ACCESS(fvp, VWRITE, cred);
1133 error = genfs_ufslike_check_sticky(cred, fdmode, fduid, fvp, fuid);