diff options
author | jeff <jeff@FreeBSD.org> | 2005-03-28 09:34:36 +0000 |
---|---|---|
committer | jeff <jeff@FreeBSD.org> | 2005-03-28 09:34:36 +0000 |
commit | b136fd4eeec08b4463f68e065e6aa2a33f14b660 (patch) | |
tree | 3389742b8c4fd07ec495c3a6df23823b2153cd70 /sys/fs/cd9660 | |
parent | 0afa18e58f0050e8bf00de7ba60dd9a366b273b5 (diff) | |
download | FreeBSD-src-b136fd4eeec08b4463f68e065e6aa2a33f14b660.zip FreeBSD-src-b136fd4eeec08b4463f68e065e6aa2a33f14b660.tar.gz |
- We no longer have to bother with PDIRUNLOCK, lookup() handles it for us.
Sponsored by: Isilon Systems, Inc.
Diffstat (limited to 'sys/fs/cd9660')
-rw-r--r-- | sys/fs/cd9660/cd9660_lookup.c | 15 |
1 files changed, 0 insertions, 15 deletions
diff --git a/sys/fs/cd9660/cd9660_lookup.c b/sys/fs/cd9660/cd9660_lookup.c index bbff6c1..09dbe5f 100644 --- a/sys/fs/cd9660/cd9660_lookup.c +++ b/sys/fs/cd9660/cd9660_lookup.c @@ -102,7 +102,6 @@ cd9660_lookup(ap) struct vnode *pdp; /* saved dp during symlink work */ struct vnode *tdp; /* returned by cd9660_vget_internal */ u_long bmask; /* block offset mask */ - int lockparent; /* 1 => lockparent flag is set */ int error; ino_t ino = 0; int reclen; @@ -123,8 +122,6 @@ cd9660_lookup(ap) vdp = ap->a_dvp; dp = VTOI(vdp); imp = dp->i_mnt; - lockparent = flags & LOCKPARENT; - cnp->cn_flags &= ~PDIRUNLOCK; /* * We now have a segment name to search for, and a directory to search. @@ -360,14 +357,6 @@ found: vn_lock(pdp, LK_EXCLUSIVE | LK_RETRY, td); return (error); } - if (lockparent && (flags & ISLASTCN)) { - if ((error = vn_lock(pdp, LK_EXCLUSIVE, td)) != 0) { - cnp->cn_flags |= PDIRUNLOCK; - vput(tdp); - return (error); - } - } else - cnp->cn_flags |= PDIRUNLOCK; *vpp = tdp; } else if (dp->i_number == dp->i_ino) { brelse(bp); @@ -380,10 +369,6 @@ found: brelse(bp); if (error) return (error); - if (!lockparent || !(flags & ISLASTCN)) { - cnp->cn_flags |= PDIRUNLOCK; - VOP_UNLOCK(pdp, 0, td); - } *vpp = tdp; } |