VN_RELE calls osi_iput on Linux which tries to get GLOCK.
authorNickolai Zeldovich <kolya@mit.edu>
Sat, 20 Jul 2002 08:53:33 +0000 (08:53 +0000)
committerNickolai Zeldovich <kolya@mit.edu>
Sat, 20 Jul 2002 08:53:33 +0000 (08:53 +0000)
Don't call VN_RELE while holding GLOCK.

src/afs/afs_vcache.c

index 9f9526e..16bf085 100644 (file)
@@ -485,8 +485,8 @@ static void afs_TryFlushDcacheChildren(struct vcache *tvc)
     VN_HOLD(tvc);
     AFS_GUNLOCK();
     d_prune_aliases(ip);
-    AFS_GLOCK();
     VN_RELE(tvc);
+    AFS_GLOCK();
 #else
 restart:
     DLOCK();