diff options
Diffstat (limited to 'fs/ext4/super.c')
-rw-r--r-- | fs/ext4/super.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/fs/ext4/super.c b/fs/ext4/super.c index c17200a42301..012c4251397e 100644 --- a/fs/ext4/super.c +++ b/fs/ext4/super.c | |||
@@ -3422,6 +3422,8 @@ static int ext4_remount(struct super_block *sb, int *flags, char *data) | |||
3422 | int i; | 3422 | int i; |
3423 | #endif | 3423 | #endif |
3424 | 3424 | ||
3425 | lock_kernel(); | ||
3426 | |||
3425 | /* Store the original options */ | 3427 | /* Store the original options */ |
3426 | lock_super(sb); | 3428 | lock_super(sb); |
3427 | old_sb_flags = sb->s_flags; | 3429 | old_sb_flags = sb->s_flags; |
@@ -3558,6 +3560,7 @@ static int ext4_remount(struct super_block *sb, int *flags, char *data) | |||
3558 | kfree(old_opts.s_qf_names[i]); | 3560 | kfree(old_opts.s_qf_names[i]); |
3559 | #endif | 3561 | #endif |
3560 | unlock_super(sb); | 3562 | unlock_super(sb); |
3563 | unlock_kernel(); | ||
3561 | return 0; | 3564 | return 0; |
3562 | 3565 | ||
3563 | restore_opts: | 3566 | restore_opts: |
@@ -3578,6 +3581,7 @@ restore_opts: | |||
3578 | } | 3581 | } |
3579 | #endif | 3582 | #endif |
3580 | unlock_super(sb); | 3583 | unlock_super(sb); |
3584 | unlock_kernel(); | ||
3581 | return err; | 3585 | return err; |
3582 | } | 3586 | } |
3583 | 3587 | ||