Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

get rid of kill_litter_super()

Not used anymore.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>

Al Viro fc45aee6 4433d8e2

+7 -32
+7
Documentation/filesystems/porting.rst
··· 1309 1309 vfs_parse_fs_qstr(fc, key, &QSTR_LEN(value, len)) 1310 1310 1311 1311 instead. 1312 + 1313 + --- 1314 + 1315 + **mandatory** 1316 + 1317 + kill_litter_super() is gone; convert to DCACHE_PERSISTENT use (as all 1318 + in-tree filesystems have done).
-21
fs/dcache.c
··· 3167 3167 } 3168 3168 EXPORT_SYMBOL(is_subdir); 3169 3169 3170 - static enum d_walk_ret d_genocide_kill(void *data, struct dentry *dentry) 3171 - { 3172 - struct dentry *root = data; 3173 - if (dentry != root) { 3174 - if (d_unhashed(dentry) || !dentry->d_inode || 3175 - dentry->d_flags & DCACHE_PERSISTENT) 3176 - return D_WALK_SKIP; 3177 - 3178 - if (!(dentry->d_flags & DCACHE_GENOCIDE)) { 3179 - dentry->d_flags |= DCACHE_GENOCIDE; 3180 - dentry->d_lockref.count--; 3181 - } 3182 - } 3183 - return D_WALK_CONTINUE; 3184 - } 3185 - 3186 - void d_genocide(struct dentry *parent) 3187 - { 3188 - d_walk(parent, parent, d_genocide_kill); 3189 - } 3190 - 3191 3170 void d_mark_tmpfile(struct file *file, struct inode *inode) 3192 3171 { 3193 3172 struct dentry *dentry = file->f_path.dentry;
-1
fs/internal.h
··· 227 227 extern struct dentry *__d_lookup(const struct dentry *, const struct qstr *); 228 228 extern struct dentry *__d_lookup_rcu(const struct dentry *parent, 229 229 const struct qstr *name, unsigned *seq); 230 - extern void d_genocide(struct dentry *); 231 230 232 231 /* 233 232 * pipe.c
-8
fs/super.c
··· 1284 1284 } 1285 1285 EXPORT_SYMBOL(kill_anon_super); 1286 1286 1287 - void kill_litter_super(struct super_block *sb) 1288 - { 1289 - if (sb->s_root) 1290 - d_genocide(sb->s_root); 1291 - kill_anon_super(sb); 1292 - } 1293 - EXPORT_SYMBOL(kill_litter_super); 1294 - 1295 1287 int set_anon_super_fc(struct super_block *sb, struct fs_context *fc) 1296 1288 { 1297 1289 return set_anon_super(sb, NULL);
-1
include/linux/dcache.h
··· 198 198 DCACHE_REFERENCED = BIT(6), /* Recently used, don't discard. */ 199 199 DCACHE_DONTCACHE = BIT(7), /* Purge from memory on final dput() */ 200 200 DCACHE_CANT_MOUNT = BIT(8), 201 - DCACHE_GENOCIDE = BIT(9), 202 201 DCACHE_SHRINK_LIST = BIT(10), 203 202 DCACHE_OP_WEAK_REVALIDATE = BIT(11), 204 203 /*
-1
include/linux/fs.h
··· 2728 2728 void generic_shutdown_super(struct super_block *sb); 2729 2729 void kill_block_super(struct super_block *sb); 2730 2730 void kill_anon_super(struct super_block *sb); 2731 - void kill_litter_super(struct super_block *sb); 2732 2731 void deactivate_super(struct super_block *sb); 2733 2732 void deactivate_locked_super(struct super_block *sb); 2734 2733 int set_anon_super(struct super_block *s, void *data);