mirror of https://gitee.com/openkylin/linux.git
lightnvm: pblk: fix error handling of pblk_lines_init()
In the too many bad blocks error handling case, we should release all
the allocated resources, otherwise it will cause memory leak.
Fixes: 2deeefc02d
("lightnvm: pblk: fail gracefully on line alloc. failure")
Signed-off-by: Wei Yongjun <weiyongjun1@huawei.com>
Reviewed-by: Hans Holmberg <hans.holmberg@cnexlabs.com>
Signed-off-by: Matias Bjørling <mb@lightnvm.io>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
This commit is contained in:
parent
6fd05cad5e
commit
a70985f83c
|
@ -1024,7 +1024,8 @@ static int pblk_lines_init(struct pblk *pblk)
|
||||||
|
|
||||||
if (!nr_free_chks) {
|
if (!nr_free_chks) {
|
||||||
pblk_err(pblk, "too many bad blocks prevent for sane instance\n");
|
pblk_err(pblk, "too many bad blocks prevent for sane instance\n");
|
||||||
return -EINTR;
|
ret = -EINTR;
|
||||||
|
goto fail_free_lines;
|
||||||
}
|
}
|
||||||
|
|
||||||
pblk_set_provision(pblk, nr_free_chks);
|
pblk_set_provision(pblk, nr_free_chks);
|
||||||
|
|
Loading…
Reference in New Issue