Skip to content

Commit ac3d1a1

Browse files
shuangpeng-kernelgregkh
authored andcommitted
nilfs2: fix backing_dev_info reference leak
[ Upstream commit 665f192 ] setup_bdev_super() already initializes sb->s_bdev and takes a reference on the block device backing_dev_info when assigning sb->s_bdi. nilfs_fill_super() takes another reference to the same backing_dev_info and stores it in sb->s_bdi again. The extra reference is not paired with a matching bdi_put(), since generic_shutdown_super() releases sb->s_bdi only once. Drop the redundant bdi_get() in nilfs_fill_super(). The single reference taken by setup_bdev_super() is enough and is released during superblock shutdown. Fixes: c1e012e ("nilfs2: use setup_bdev_super to de-duplicate the mount code") Signed-off-by: Shuangpeng Bai <shuangpeng.kernel@gmail.com> Acked-by: Ryusuke Konishi <konishi.ryusuke@gmail.com> Reviewed-by: Viacheslav Dubeyko <slava@dubeyko.com> Signed-off-by: Viacheslav Dubeyko <slava@dubeyko.com> Signed-off-by: Sasha Levin <sashal@kernel.org>
1 parent ae9e534 commit ac3d1a1

1 file changed

Lines changed: 0 additions & 2 deletions

File tree

fs/nilfs2/super.c

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1086,8 +1086,6 @@ nilfs_fill_super(struct super_block *sb, void *data, int silent)
10861086
sb->s_time_gran = 1;
10871087
sb->s_max_links = NILFS_LINK_MAX;
10881088

1089-
sb->s_bdi = bdi_get(sb->s_bdev->bd_disk->bdi);
1090-
10911089
err = load_nilfs(nilfs, sb);
10921090
if (err)
10931091
goto failed_nilfs;

0 commit comments

Comments
 (0)