mtd: docg3: Don't leak docg3->bbt in error path

Signed-off-by: Richard Weinberger <richard@nod.at>
Signed-off-by: Brian Norris <computersforpeace@gmail.com>
This commit is contained in:
Richard Weinberger 2015-06-01 23:10:52 +02:00 коммит произвёл Brian Norris
Родитель 641c7925b6
Коммит 45c2ebd702
1 изменённых файлов: 4 добавлений и 2 удалений

Просмотреть файл

@ -1900,7 +1900,7 @@ doc_probe_device(struct docg3_cascade *cascade, int floor, struct device *dev)
ret = 0;
if (chip_id != (u16)(~chip_id_inv)) {
goto nomem3;
goto nomem4;
}
switch (chip_id) {
@ -1910,7 +1910,7 @@ doc_probe_device(struct docg3_cascade *cascade, int floor, struct device *dev)
break;
default:
doc_err("Chip id %04x is not a DiskOnChip G3 chip\n", chip_id);
goto nomem3;
goto nomem4;
}
doc_set_driver_info(chip_id, mtd);
@ -1919,6 +1919,8 @@ doc_probe_device(struct docg3_cascade *cascade, int floor, struct device *dev)
doc_reload_bbt(docg3);
return mtd;
nomem4:
kfree(docg3->bbt);
nomem3:
kfree(mtd);
nomem2: