mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-25 05:04:09 +08:00
vfs: drop lock/unlock super
Removed s_lock from super_block and removed lock/unlock super. Signed-off-by: Marco Stornelli <marco.stornelli@gmail.com> Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
This commit is contained in:
parent
b6963327e0
commit
8e22cc88d6
23
fs/super.c
23
fs/super.c
@ -186,14 +186,7 @@ static struct super_block *alloc_super(struct file_system_type *type, int flags)
|
||||
spin_lock_init(&s->s_inode_lru_lock);
|
||||
INIT_LIST_HEAD(&s->s_mounts);
|
||||
init_rwsem(&s->s_umount);
|
||||
mutex_init(&s->s_lock);
|
||||
lockdep_set_class(&s->s_umount, &type->s_umount_key);
|
||||
/*
|
||||
* The locking rules for s_lock are up to the
|
||||
* filesystem. For example ext3fs has different
|
||||
* lock ordering than usbfs:
|
||||
*/
|
||||
lockdep_set_class(&s->s_lock, &type->s_lock_key);
|
||||
/*
|
||||
* sget() can have s_umount recursion.
|
||||
*
|
||||
@ -394,22 +387,6 @@ bool grab_super_passive(struct super_block *sb)
|
||||
return false;
|
||||
}
|
||||
|
||||
/*
|
||||
* Superblock locking. We really ought to get rid of these two.
|
||||
*/
|
||||
void lock_super(struct super_block * sb)
|
||||
{
|
||||
mutex_lock(&sb->s_lock);
|
||||
}
|
||||
|
||||
void unlock_super(struct super_block * sb)
|
||||
{
|
||||
mutex_unlock(&sb->s_lock);
|
||||
}
|
||||
|
||||
EXPORT_SYMBOL(lock_super);
|
||||
EXPORT_SYMBOL(unlock_super);
|
||||
|
||||
/**
|
||||
* generic_shutdown_super - common helper for ->kill_sb()
|
||||
* @sb: superblock to kill
|
||||
|
@ -1507,7 +1507,6 @@ struct super_block {
|
||||
unsigned long s_magic;
|
||||
struct dentry *s_root;
|
||||
struct rw_semaphore s_umount;
|
||||
struct mutex s_lock;
|
||||
int s_count;
|
||||
atomic_t s_active;
|
||||
#ifdef CONFIG_SECURITY
|
||||
|
Loading…
Reference in New Issue
Block a user