aboutsummaryrefslogtreecommitdiffstats
path: root/fs/ext3/super.c
diff options
context:
space:
mode:
authorAlessio Igor Bogani <abogani@texware.it>2009-05-12 09:10:54 -0400
committerAl Viro <viro@zeniv.linux.org.uk>2009-06-11 21:36:11 -0400
commit337eb00a2c3a421999c39c94ce7e33545ee8baa7 (patch)
treed9b780d095b638b1d8fa23841ff70347cf5daa08 /fs/ext3/super.c
parent4195f73d1329e49727bcceb028e58cb38376c2b0 (diff)
Push BKL down into ->remount_fs()
[xfs, btrfs, capifs, shmem don't need BKL, exempt] Signed-off-by: Alessio Igor Bogani <abogani@texware.it> Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'fs/ext3/super.c')
-rw-r--r--fs/ext3/super.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/fs/ext3/super.c b/fs/ext3/super.c
index e213a2613a56..26aa64dee6aa 100644
--- a/fs/ext3/super.c
+++ b/fs/ext3/super.c
@@ -2490,6 +2490,8 @@ static int ext3_remount (struct super_block * sb, int * flags, char * data)
2490 int i; 2490 int i;
2491#endif 2491#endif
2492 2492
2493 lock_kernel();
2494
2493 /* Store the original options */ 2495 /* Store the original options */
2494 lock_super(sb); 2496 lock_super(sb);
2495 old_sb_flags = sb->s_flags; 2497 old_sb_flags = sb->s_flags;
@@ -2600,6 +2602,7 @@ static int ext3_remount (struct super_block * sb, int * flags, char * data)
2600 kfree(old_opts.s_qf_names[i]); 2602 kfree(old_opts.s_qf_names[i]);
2601#endif 2603#endif
2602 unlock_super(sb); 2604 unlock_super(sb);
2605 unlock_kernel();
2603 return 0; 2606 return 0;
2604restore_opts: 2607restore_opts:
2605 sb->s_flags = old_sb_flags; 2608 sb->s_flags = old_sb_flags;
@@ -2617,6 +2620,7 @@ restore_opts:
2617 } 2620 }
2618#endif 2621#endif
2619 unlock_super(sb); 2622 unlock_super(sb);
2623 unlock_kernel();
2620 return err; 2624 return err;
2621} 2625}
2622 2626