diff --git a/src/afs/LINUX/osi_vnodeops.c b/src/afs/LINUX/osi_vnodeops.c
index fa0ad91..6059add 100644
--- a/src/afs/LINUX/osi_vnodeops.c
+++ b/src/afs/LINUX/osi_vnodeops.c
@@ -1198,10 +1198,9 @@ afs_linux_dentry_revalidate(struct dentry *dp, int flags)
     if (credp)
 	crfree(credp);
 
-    if (!valid) {
-	shrink_dcache_parent(dp);
-	d_drop(dp);
-    }
+    if (!valid)
+	d_invalidate(dp);
+
     return valid;
 
   bad_dentry:
