瀏覽代碼

udf: Remove BKL from udf_put_super() and udf_remount_fs()

udf_put_super() does not need BKL because the filesystem is shut down so
there's nothing to race with. The credential changes in udf_remount_fs()
and LVID changes are now protected by dedicated locks so we can remove BKL
from this function as well.

Signed-off-by: Jan Kara <jack@suse.cz>
Jan Kara 14 年之前
父節點
當前提交
0484b1cedc
共有 1 個文件被更改,包括 0 次插入6 次删除
  1. 0 6
      fs/udf/super.c

+ 0 - 6
fs/udf/super.c

@@ -567,7 +567,6 @@ static int udf_remount_fs(struct super_block *sb, int *flags, char *options)
 	if (!udf_parse_options(options, &uopt, true))
 	if (!udf_parse_options(options, &uopt, true))
 		return -EINVAL;
 		return -EINVAL;
 
 
-	lock_kernel();
 	write_lock(&sbi->s_cred_lock);
 	write_lock(&sbi->s_cred_lock);
 	sbi->s_flags = uopt.flags;
 	sbi->s_flags = uopt.flags;
 	sbi->s_uid   = uopt.uid;
 	sbi->s_uid   = uopt.uid;
@@ -592,7 +591,6 @@ static int udf_remount_fs(struct super_block *sb, int *flags, char *options)
 		udf_open_lvid(sb);
 		udf_open_lvid(sb);
 
 
 out_unlock:
 out_unlock:
-	unlock_kernel();
 	return error;
 	return error;
 }
 }
 
 
@@ -2132,8 +2130,6 @@ static void udf_put_super(struct super_block *sb)
 
 
 	sbi = UDF_SB(sb);
 	sbi = UDF_SB(sb);
 
 
-	lock_kernel();
-
 	if (sbi->s_vat_inode)
 	if (sbi->s_vat_inode)
 		iput(sbi->s_vat_inode);
 		iput(sbi->s_vat_inode);
 	if (sbi->s_partitions)
 	if (sbi->s_partitions)
@@ -2149,8 +2145,6 @@ static void udf_put_super(struct super_block *sb)
 	kfree(sbi->s_partmaps);
 	kfree(sbi->s_partmaps);
 	kfree(sb->s_fs_info);
 	kfree(sb->s_fs_info);
 	sb->s_fs_info = NULL;
 	sb->s_fs_info = NULL;
-
-	unlock_kernel();
 }
 }
 
 
 static int udf_sync_fs(struct super_block *sb, int wait)
 static int udf_sync_fs(struct super_block *sb, int wait)