]> git.michaelhowe.org Git - packages/o/openafs.git/commitdiff
linux-dont-lock-around-inactivevcache-20061010
authorChas Williams <chas@cmf.nrl.navy.mil>
Tue, 10 Oct 2006 22:59:10 +0000 (22:59 +0000)
committerDerrick Brashear <shadow@dementia.org>
Tue, 10 Oct 2006 22:59:10 +0000 (22:59 +0000)
FIXES 42312

iafs_InactiveVCache() calls afs_InvalidateAllSegments() which says
it should be called with the vnode locked. so the lock should
probably be moved to afs_InactiveVCache() so it can be droppped
before calling afs_remunlink().

src/afs/LINUX/osi_vnodeops.c

index 41b8f14f86b05c7724cbadf9cbdc0fa656ea39e3..2f8b776762e8dd6306ee5fbf5a2ab7c9c459b71f 100644 (file)
@@ -839,9 +839,7 @@ afs_dentry_iput(struct dentry *dp, struct inode *ip)
     struct vcache *vcp = VTOAFS(ip);
 
     AFS_GLOCK();
-    ObtainWriteLock(&vcp->lock, 537);
     (void) afs_InactiveVCache(vcp, NULL);
-    ReleaseWriteLock(&vcp->lock);
     AFS_GUNLOCK();
 
     iput(ip);