get rid of DCACHE_GENOCIDE
authorAl Viro <viro@zeniv.linux.org.uk>
Mon, 13 Nov 2023 02:38:48 +0000 (21:38 -0500)
committerAl Viro <viro@zeniv.linux.org.uk>
Sat, 25 Nov 2023 07:50:19 +0000 (02:50 -0500)
... now that we never call d_genocide() other than from kill_litter_super()

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
fs/dcache.c
include/linux/dcache.h

index 5947556..8473c8f 100644 (file)
@@ -3198,10 +3198,7 @@ static enum d_walk_ret d_genocide_kill(void *data, struct dentry *dentry)
                if (d_unhashed(dentry) || !dentry->d_inode)
                        return D_WALK_SKIP;
 
-               if (!(dentry->d_flags & DCACHE_GENOCIDE)) {
-                       dentry->d_flags |= DCACHE_GENOCIDE;
-                       dentry->d_lockref.count--;
-               }
+               dentry->d_lockref.count--;
        }
        return D_WALK_CONTINUE;
 }
index b4324d4..981f529 100644 (file)
@@ -173,7 +173,6 @@ struct dentry_operations {
 #define DCACHE_DONTCACHE               BIT(7) /* Purge from memory on final dput() */
 
 #define DCACHE_CANT_MOUNT              BIT(8)
-#define DCACHE_GENOCIDE                        BIT(9)
 #define DCACHE_SHRINK_LIST             BIT(10)
 
 #define DCACHE_OP_WEAK_REVALIDATE      BIT(11)