diff options
Diffstat (limited to 'fs/fat/inode.c')
-rw-r--r-- | fs/fat/inode.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/fs/fat/inode.c b/fs/fat/inode.c index 4978621511bf..2b88c93af227 100644 --- a/fs/fat/inode.c +++ b/fs/fat/inode.c | |||
@@ -451,6 +451,8 @@ static void fat_put_super(struct super_block *sb) | |||
451 | { | 451 | { |
452 | struct msdos_sb_info *sbi = MSDOS_SB(sb); | 452 | struct msdos_sb_info *sbi = MSDOS_SB(sb); |
453 | 453 | ||
454 | lock_kernel(); | ||
455 | |||
454 | if (sb->s_dirt) | 456 | if (sb->s_dirt) |
455 | fat_write_super(sb); | 457 | fat_write_super(sb); |
456 | 458 | ||
@@ -470,6 +472,8 @@ static void fat_put_super(struct super_block *sb) | |||
470 | 472 | ||
471 | sb->s_fs_info = NULL; | 473 | sb->s_fs_info = NULL; |
472 | kfree(sbi); | 474 | kfree(sbi); |
475 | |||
476 | unlock_kernel(); | ||
473 | } | 477 | } |
474 | 478 | ||
475 | static struct kmem_cache *fat_inode_cachep; | 479 | static struct kmem_cache *fat_inode_cachep; |