Skip to content

Commit 0325225

Browse files
Wenchao Haomartinkpetersen
authored andcommitted
scsi: sd: Clean up gendisk if device_add_disk() failed
We forgot to call blk_cleanup_disk() when device_add_disk() failed. This would cause a memory leak of gendisk and sched_tags allocated in elevator_init_mq() Reference:https://syzkaller.appspot.com/x/log.txt?x=13b41dcb700000 Reported-and-tested-by: syzbot+f08c77040fa163a75a46@syzkaller.appspotmail.com Link: https://lore.kernel.org/r/20220401011018.1026553-1-haowenchao@huawei.com Signed-off-by: Wenchao Hao <haowenchao@huawei.com> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
1 parent 61144d8 commit 0325225

File tree

1 file changed

+1
-0
lines changed

1 file changed

+1
-0
lines changed

drivers/scsi/sd.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3475,6 +3475,7 @@ static int sd_probe(struct device *dev)
34753475
error = device_add_disk(dev, gd, NULL);
34763476
if (error) {
34773477
put_device(&sdkp->disk_dev);
3478+
blk_cleanup_disk(gd);
34783479
goto out;
34793480
}
34803481

0 commit comments

Comments
 (0)