]> git.michaelhowe.org Git - packages/o/openafs.git/commitdiff
STABLE10-fix-for-cache-consistency-on-linux-24-smp-systems-20010315
authorErik J. Burckart <ejburcka@us.ibm.com>
Mon, 23 Apr 2001 04:25:29 +0000 (04:25 +0000)
committerDerrick Brashear <shadow@dementia.org>
Mon, 23 Apr 2001 04:25:29 +0000 (04:25 +0000)
obsolete but pulled in so everything applies cleanly
CS: ----------------------------------------------------------------------

(cherry picked from commit 4b85432743e002eae3e636febadb326c2081732d)

src/afs/LINUX/osi_vnodeops.c

index 960d54c36899daf9584be3c984ceb528c9c80f9e..f6d680fa4e0ab4ed2644f2401f3256f7745c0c4d 100644 (file)
@@ -628,6 +628,16 @@ static int afs_linux_revalidate(struct dentry *dp)
        return 0;
     }
 
+    /* Drop the dentry if the callback is broken */
+    if (!(vcp->states & CStatd)) {
+        d_drop(dp); 
+#ifdef AFS_LINUX24_ENV
+       unlock_kernel();
+#endif
+        AFS_GUNLOCK();
+        return 0;
+    }
+
     /* Make this a fast path (no crref), since it's called so often. */
     if (vcp->states & CStatd) {
         if (*dp->d_name.name != '/' && vcp->mvstat == 2) /* root vnode */