Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
@@ -149,7 +149,7 @@ static void destroy_super(struct super_block *s)
WARN_ON(!list_empty(&s->s_mounts));
kfree(s->s_subtype);
kfree(s->s_options);
- kfree(s);
+ kfree_rcu(s, rcu);
}
/**
@@ -1330,6 +1330,7 @@ struct super_block {
*/
struct list_lru s_dentry_lru ____cacheline_aligned_in_smp;
struct list_lru s_inode_lru ____cacheline_aligned_in_smp;
+ struct rcu_head rcu;
};
extern struct timespec current_fs_time(struct super_block *sb);