]> bbs.cooldavid.org Git - net-next-2.6.git/blobdiff - fs/udf/super.c
push BKL down into ->put_super
[net-next-2.6.git] / fs / udf / super.c
index 0ba44107d8f109af092106d6663e0a06df9de219..04802cc39b18d8f8016c3ec6b0dd052045df8031 100644 (file)
@@ -2062,6 +2062,9 @@ static void udf_put_super(struct super_block *sb)
        struct udf_sb_info *sbi;
 
        sbi = UDF_SB(sb);
+
+       lock_kernel();
+
        if (sbi->s_vat_inode)
                iput(sbi->s_vat_inode);
        if (sbi->s_partitions)
@@ -2077,6 +2080,8 @@ static void udf_put_super(struct super_block *sb)
        kfree(sbi->s_partmaps);
        kfree(sb->s_fs_info);
        sb->s_fs_info = NULL;
+
+       unlock_kernel();
 }
 
 static int udf_sync_fs(struct super_block *sb, int wait)