diff options
Diffstat (limited to 'fs/block_dev.c')
-rw-r--r-- | fs/block_dev.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/fs/block_dev.c b/fs/block_dev.c index c3cdde87cc8c..08ae99343d92 100644 --- a/fs/block_dev.c +++ b/fs/block_dev.c | |||
@@ -249,7 +249,8 @@ struct super_block *freeze_bdev(struct block_device *bdev) | |||
249 | * thaw_bdev drops it. | 249 | * thaw_bdev drops it. |
250 | */ | 250 | */ |
251 | sb = get_super(bdev); | 251 | sb = get_super(bdev); |
252 | drop_super(sb); | 252 | if (sb) |
253 | drop_super(sb); | ||
253 | mutex_unlock(&bdev->bd_fsfreeze_mutex); | 254 | mutex_unlock(&bdev->bd_fsfreeze_mutex); |
254 | return sb; | 255 | return sb; |
255 | } | 256 | } |
@@ -646,7 +647,7 @@ static struct dentry *bd_mount(struct file_system_type *fs_type, | |||
646 | { | 647 | { |
647 | struct dentry *dent; | 648 | struct dentry *dent; |
648 | dent = mount_pseudo(fs_type, "bdev:", &bdev_sops, NULL, BDEVFS_MAGIC); | 649 | dent = mount_pseudo(fs_type, "bdev:", &bdev_sops, NULL, BDEVFS_MAGIC); |
649 | if (dent) | 650 | if (!IS_ERR(dent)) |
650 | dent->d_sb->s_iflags |= SB_I_CGROUPWB; | 651 | dent->d_sb->s_iflags |= SB_I_CGROUPWB; |
651 | return dent; | 652 | return dent; |
652 | } | 653 | } |