From d6dd218da2f8dd56ad7a563d9924222fd9770443 Mon Sep 17 00:00:00 2001 From: Yufen Yu Date: Sat, 19 Jun 2021 15:50:05 +0800 Subject: [PATCH] block: call bdput() to avoid memleak hulk inclusion category: bugfix bugzilla: 109288 CVE: NA ------------------------------------------------- bdget_disk() will get bd_inode, so it need to do bdput(). Fixes: 3ad15d050daa ("block: take bd_mutex around delete_partitions in del_gendisk") Signed-off-by: Yufen Yu Reviewed-by: Hou Tao Signed-off-by: Yang Yingliang --- block/genhd.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/block/genhd.c b/block/genhd.c index b5820cf94b5d..a906426b5f4f 100644 --- a/block/genhd.c +++ b/block/genhd.c @@ -783,8 +783,10 @@ void del_gendisk(struct gendisk *disk) delete_partition(disk, part->partno); } disk_part_iter_exit(&piter); - if (bdev) + if (bdev) { mutex_unlock(&bdev->bd_mutex); + bdput(bdev); + } invalidate_partition(disk, 0); bdev_unhash_inode(disk_devt(disk)); -- GitLab