diff options
Diffstat (limited to 'sys/fs/unionfs')
-rw-r--r-- | sys/fs/unionfs/union_subr.c | 8 | ||||
-rw-r--r-- | sys/fs/unionfs/union_vfsops.c | 8 | ||||
-rw-r--r-- | sys/fs/unionfs/union_vnops.c | 74 |
3 files changed, 42 insertions, 48 deletions
diff --git a/sys/fs/unionfs/union_subr.c b/sys/fs/unionfs/union_subr.c index 85d7da0..590d472 100644 --- a/sys/fs/unionfs/union_subr.c +++ b/sys/fs/unionfs/union_subr.c @@ -200,9 +200,9 @@ unionfs_noderem(struct vnode *vp, struct thread *td) vp->v_data = NULL; lockmgr(vp->v_vnlock, LK_EXCLUSIVE | LK_INTERLOCK, VI_MTX(vp), td); if (lvp != NULLVP) - VOP_UNLOCK(lvp, 0, td); + VOP_UNLOCK(lvp, 0); if (uvp != NULLVP) - VOP_UNLOCK(uvp, 0, td); + VOP_UNLOCK(uvp, 0); vp->v_object = NULL; if (lvp != NULLVP) { @@ -381,7 +381,7 @@ unionfs_relookup(struct vnode *dvp, struct vnode **vpp, cn->cn_flags |= (cnp->cn_flags & SAVESTART); vref(dvp); - VOP_UNLOCK(dvp, 0, td); + VOP_UNLOCK(dvp, 0); if ((error = relookup(dvp, vpp, cn))) { uma_zfree(namei_zone, cn->cn_pnbuf); @@ -776,7 +776,7 @@ unionfs_vn_create_on_upper(struct vnode **vpp, struct vnode *udvp, *vpp = vp; unionfs_vn_create_on_upper_free_out1: - VOP_UNLOCK(udvp, 0, td); + VOP_UNLOCK(udvp, 0); unionfs_vn_create_on_upper_free_out2: if (cn.cn_flags & HASBUF) { diff --git a/sys/fs/unionfs/union_vfsops.c b/sys/fs/unionfs/union_vfsops.c index 0f8fb73..75ab212 100644 --- a/sys/fs/unionfs/union_vfsops.c +++ b/sys/fs/unionfs/union_vfsops.c @@ -200,7 +200,7 @@ unionfs_domount(struct mount *mp, struct thread *td) uid = va.va_uid; gid = va.va_gid; } - VOP_UNLOCK(mp->mnt_vnodecovered, 0, td); + VOP_UNLOCK(mp->mnt_vnodecovered, 0); if (error) return (error); @@ -288,7 +288,7 @@ unionfs_domount(struct mount *mp, struct thread *td) * Save reference */ if (below) { - VOP_UNLOCK(upperrootvp, 0, td); + VOP_UNLOCK(upperrootvp, 0); vn_lock(lowerrootvp, LK_EXCLUSIVE | LK_RETRY); ump->um_lowervp = upperrootvp; ump->um_uppervp = lowerrootvp; @@ -326,7 +326,7 @@ unionfs_domount(struct mount *mp, struct thread *td) error = VOP_WHITEOUT(ump->um_uppervp, &fakecn, LOOKUP); if (error) { if (below) { - VOP_UNLOCK(ump->um_uppervp, 0, td); + VOP_UNLOCK(ump->um_uppervp, 0); vrele(upperrootvp); } else vput(ump->um_uppervp); @@ -339,7 +339,7 @@ unionfs_domount(struct mount *mp, struct thread *td) /* * Unlock the node */ - VOP_UNLOCK(ump->um_uppervp, 0, td); + VOP_UNLOCK(ump->um_uppervp, 0); /* * Get the unionfs root vnode. diff --git a/sys/fs/unionfs/union_vnops.c b/sys/fs/unionfs/union_vnops.c index 2627111..b898083 100644 --- a/sys/fs/unionfs/union_vnops.c +++ b/sys/fs/unionfs/union_vnops.c @@ -137,7 +137,7 @@ unionfs_lookup(struct vop_cachedlookup_args *ap) if (udvp != NULLVP) { dtmpvp = udvp; if (ldvp != NULLVP) - VOP_UNLOCK(ldvp, 0, td); + VOP_UNLOCK(ldvp, 0); } else dtmpvp = ldvp; @@ -145,7 +145,7 @@ unionfs_lookup(struct vop_cachedlookup_args *ap) error = VOP_LOOKUP(dtmpvp, &vp, cnp); if (dtmpvp == udvp && ldvp != NULLVP) { - VOP_UNLOCK(udvp, 0, td); + VOP_UNLOCK(udvp, 0); vn_lock(dvp, LK_EXCLUSIVE | LK_RETRY); } @@ -157,10 +157,10 @@ unionfs_lookup(struct vop_cachedlookup_args *ap) */ if (nameiop == DELETE || nameiop == RENAME || (cnp->cn_lkflags & LK_TYPE_MASK)) - VOP_UNLOCK(vp, 0, td); + VOP_UNLOCK(vp, 0); vrele(vp); - VOP_UNLOCK(dvp, 0, td); + VOP_UNLOCK(dvp, 0); *(ap->a_vpp) = dunp->un_dvp; vref(dunp->un_dvp); @@ -198,7 +198,7 @@ unionfs_lookup(struct vop_cachedlookup_args *ap) } if (nameiop == DELETE || nameiop == RENAME || (cnp->cn_lkflags & LK_TYPE_MASK)) - VOP_UNLOCK(uvp, 0, td); + VOP_UNLOCK(uvp, 0); } /* check whiteout */ @@ -242,7 +242,7 @@ unionfs_lookup(struct vop_cachedlookup_args *ap) return (lerror); } if (cnp->cn_lkflags & LK_TYPE_MASK) - VOP_UNLOCK(lvp, 0, td); + VOP_UNLOCK(lvp, 0); } } @@ -277,7 +277,7 @@ unionfs_lookup(struct vop_cachedlookup_args *ap) goto unionfs_lookup_out; if (LK_SHARED == (cnp->cn_lkflags & LK_TYPE_MASK)) - VOP_UNLOCK(vp, 0, td); + VOP_UNLOCK(vp, 0); if (LK_EXCLUSIVE != VOP_ISLOCKED(vp, td)) { vn_lock(vp, LK_EXCLUSIVE | LK_RETRY); lockflag = 1; @@ -285,7 +285,7 @@ unionfs_lookup(struct vop_cachedlookup_args *ap) error = unionfs_mkshadowdir(MOUNTTOUNIONFSMOUNT(dvp->v_mount), udvp, VTOUNIONFS(vp), cnp, td); if (lockflag != 0) - VOP_UNLOCK(vp, 0, td); + VOP_UNLOCK(vp, 0); if (error != 0) { UNIONFSDEBUG("unionfs_lookup: Unable to create shadow dir."); if ((cnp->cn_lkflags & LK_TYPE_MASK) == LK_EXCLUSIVE) @@ -342,7 +342,6 @@ unionfs_create(struct vop_create_args *ap) { struct unionfs_node *dunp; struct componentname *cnp; - struct thread *td; struct vnode *udvp; struct vnode *vp; int error; @@ -351,15 +350,14 @@ unionfs_create(struct vop_create_args *ap) dunp = VTOUNIONFS(ap->a_dvp); cnp = ap->a_cnp; - td = curthread; udvp = dunp->un_uppervp; error = EROFS; if (udvp != NULLVP) { if ((error = VOP_CREATE(udvp, &vp, cnp, ap->a_vap)) == 0) { - VOP_UNLOCK(vp, 0, td); + VOP_UNLOCK(vp, 0); error = unionfs_nodeget(ap->a_dvp->v_mount, vp, NULLVP, - ap->a_dvp, ap->a_vpp, cnp, td); + ap->a_dvp, ap->a_vpp, cnp, curthread); vrele(vp); } } @@ -407,7 +405,6 @@ unionfs_mknod(struct vop_mknod_args *ap) { struct unionfs_node *dunp; struct componentname *cnp; - struct thread *td; struct vnode *udvp; struct vnode *vp; int error; @@ -416,15 +413,14 @@ unionfs_mknod(struct vop_mknod_args *ap) dunp = VTOUNIONFS(ap->a_dvp); cnp = ap->a_cnp; - td = curthread; udvp = dunp->un_uppervp; error = EROFS; if (udvp != NULLVP) { if ((error = VOP_MKNOD(udvp, &vp, cnp, ap->a_vap)) == 0) { - VOP_UNLOCK(vp, 0, td); + VOP_UNLOCK(vp, 0); error = unionfs_nodeget(ap->a_dvp->v_mount, vp, NULLVP, - ap->a_dvp, ap->a_vpp, cnp, td); + ap->a_dvp, ap->a_vpp, cnp, curthread); vrele(vp); } } @@ -576,7 +572,7 @@ unionfs_close_abort: unionfs_tryrem_node_status(unp, td, unsp); if (locked != 0) - VOP_UNLOCK(ap->a_vp, 0, td); + VOP_UNLOCK(ap->a_vp, 0); UNIONFS_INTERNAL_DEBUG("unionfs_close: leave (%d)\n", error); @@ -882,7 +878,7 @@ unionfs_ioctl(struct vop_ioctl_args *ap) unionfs_get_node_status(unp, ap->a_td, &unsp); ovp = (unsp->uns_upper_opencnt ? unp->un_uppervp : unp->un_lowervp); unionfs_tryrem_node_status(unp, ap->a_td, unsp); - VOP_UNLOCK(ap->a_vp, 0, ap->a_td); + VOP_UNLOCK(ap->a_vp, 0); if (ovp == NULLVP) return (EBADF); @@ -907,7 +903,7 @@ unionfs_poll(struct vop_poll_args *ap) unionfs_get_node_status(unp, ap->a_td, &unsp); ovp = (unsp->uns_upper_opencnt ? unp->un_uppervp : unp->un_lowervp); unionfs_tryrem_node_status(unp, ap->a_td, unsp); - VOP_UNLOCK(ap->a_vp, 0, ap->a_td); + VOP_UNLOCK(ap->a_vp, 0); if (ovp == NULLVP) return (EBADF); @@ -1111,7 +1107,7 @@ unionfs_rename(struct vop_rename_args *ap) if ((error = vn_lock(fvp, LK_EXCLUSIVE)) != 0) goto unionfs_rename_abort; error = unionfs_copyfile(unp, 1, fcnp->cn_cred, td); - VOP_UNLOCK(fvp, 0, td); + VOP_UNLOCK(fvp, 0); if (error != 0) goto unionfs_rename_abort; break; @@ -1119,7 +1115,7 @@ unionfs_rename(struct vop_rename_args *ap) if ((error = vn_lock(fvp, LK_EXCLUSIVE)) != 0) goto unionfs_rename_abort; error = unionfs_mkshadowdir(ump, rfdvp, unp, fcnp, td); - VOP_UNLOCK(fvp, 0, td); + VOP_UNLOCK(fvp, 0); if (error != 0) goto unionfs_rename_abort; break; @@ -1173,13 +1169,13 @@ unionfs_rename(struct vop_rename_args *ap) if ((error = vn_lock(fdvp, LK_EXCLUSIVE)) != 0) goto unionfs_rename_abort; error = unionfs_relookup_for_delete(fdvp, fcnp, td); - VOP_UNLOCK(fdvp, 0, td); + VOP_UNLOCK(fdvp, 0); if (error != 0) goto unionfs_rename_abort; /* Locke of tvp is canceled in order to avoid recursive lock. */ if (tvp != NULLVP && tvp != tdvp) - VOP_UNLOCK(tvp, 0, td); + VOP_UNLOCK(tvp, 0); error = unionfs_relookup_for_rename(tdvp, tcnp, td); if (tvp != NULLVP && tvp != tdvp) vn_lock(tvp, LK_EXCLUSIVE | LK_RETRY); @@ -1201,11 +1197,11 @@ unionfs_rename(struct vop_rename_args *ap) if (fvp != rfvp) vrele(fvp); if (ltdvp != NULLVP) - VOP_UNLOCK(ltdvp, 0, td); + VOP_UNLOCK(ltdvp, 0); if (tdvp != rtdvp) vrele(tdvp); if (ltvp != NULLVP) - VOP_UNLOCK(ltvp, 0, td); + VOP_UNLOCK(ltvp, 0); if (tvp != rtvp && tvp != NULLVP) { if (rtvp == NULLVP) vput(tvp); @@ -1273,7 +1269,7 @@ unionfs_mkdir(struct vop_mkdir_args *ap) } if ((error = VOP_MKDIR(udvp, &uvp, cnp, ap->a_vap)) == 0) { - VOP_UNLOCK(uvp, 0, td); + VOP_UNLOCK(uvp, 0); cnp->cn_lkflags = LK_EXCLUSIVE; error = unionfs_nodeget(ap->a_dvp->v_mount, uvp, NULLVP, ap->a_dvp, ap->a_vpp, cnp, td); @@ -1364,7 +1360,7 @@ unionfs_symlink(struct vop_symlink_args *ap) if (udvp != NULLVP) { error = VOP_SYMLINK(udvp, &uvp, cnp, ap->a_vap, ap->a_target); if (error == 0) { - VOP_UNLOCK(uvp, 0, td); + VOP_UNLOCK(uvp, 0); cnp->cn_lkflags = LK_EXCLUSIVE; error = unionfs_nodeget(ap->a_dvp->v_mount, uvp, NULLVP, ap->a_dvp, ap->a_vpp, cnp, td); @@ -1661,16 +1657,14 @@ unionfs_lock(struct vop_lock1_args *ap) struct vnode *vp; struct vnode *uvp; struct vnode *lvp; - struct thread *td; error = 0; uhold = 0; flags = ap->a_flags; vp = ap->a_vp; - td = ap->a_td; if (LK_RELEASE == (flags & LK_TYPE_MASK) || !(flags & LK_TYPE_MASK)) - return (VOP_UNLOCK(vp, flags, td)); + return (VOP_UNLOCK(vp, flags)); if ((revlock = unionfs_get_llt_revlock(flags)) == 0) panic("unknown lock type: 0x%x", flags & LK_TYPE_MASK); @@ -1709,14 +1703,14 @@ unionfs_lock(struct vop_lock1_args *ap) VI_UNLOCK(vp); ap->a_flags &= ~LK_INTERLOCK; - error = VOP_LOCK(lvp, flags, td); + error = VOP_LOCK(lvp, flags); VI_LOCK(vp); unp = VTOUNIONFS(vp); if (unp == NULL) { VI_UNLOCK(vp); if (error == 0) - VOP_UNLOCK(lvp, 0, td); + VOP_UNLOCK(lvp, 0); vdrop(lvp); return (vop_stdlock(ap)); } @@ -1731,16 +1725,16 @@ unionfs_lock(struct vop_lock1_args *ap) VI_UNLOCK(vp); ap->a_flags &= ~LK_INTERLOCK; - error = VOP_LOCK(uvp, flags, td); + error = VOP_LOCK(uvp, flags); VI_LOCK(vp); unp = VTOUNIONFS(vp); if (unp == NULL) { VI_UNLOCK(vp); if (error == 0) { - VOP_UNLOCK(uvp, 0, td); + VOP_UNLOCK(uvp, 0); if (lvp != NULLVP) - VOP_UNLOCK(lvp, 0, td); + VOP_UNLOCK(lvp, 0); } if (lvp != NULLVP) vdrop(lvp); @@ -1751,7 +1745,7 @@ unionfs_lock(struct vop_lock1_args *ap) if (error != 0 && lvp != NULLVP) { VI_UNLOCK(vp); if ((revlock & LK_TYPE_MASK) == LK_RELEASE) - VOP_UNLOCK(lvp, revlock, td); + VOP_UNLOCK(lvp, revlock); else vn_lock(lvp, revlock | LK_RETRY); goto unionfs_lock_abort; @@ -1811,7 +1805,7 @@ unionfs_unlock(struct vop_unlock_args *ap) VI_UNLOCK(vp); ap->a_flags &= ~LK_INTERLOCK; - error = VOP_UNLOCK(lvp, flags, ap->a_td); + error = VOP_UNLOCK(lvp, flags); VI_LOCK(vp); } @@ -1825,7 +1819,7 @@ unionfs_unlock(struct vop_unlock_args *ap) VI_UNLOCK(vp); ap->a_flags &= ~LK_INTERLOCK; - error = VOP_UNLOCK(uvp, flags, ap->a_td); + error = VOP_UNLOCK(uvp, flags); VI_LOCK(vp); } @@ -1898,7 +1892,7 @@ unionfs_advlock(struct vop_advlock_args *ap) unionfs_tryrem_node_status(unp, td, unsp); } - VOP_UNLOCK(vp, 0, td); + VOP_UNLOCK(vp, 0); error = VOP_ADVLOCK(uvp, ap->a_id, ap->a_op, ap->a_fl, ap->a_flags); @@ -1907,7 +1901,7 @@ unionfs_advlock(struct vop_advlock_args *ap) return error; unionfs_advlock_abort: - VOP_UNLOCK(vp, 0, td); + VOP_UNLOCK(vp, 0); UNIONFS_INTERNAL_DEBUG("unionfs_advlock: leave (%d)\n", error); |