Commit e6b754c2 authored by Javier González's avatar Javier González Committed by Jens Axboe

lightnvm: pblk: ensure right bad block calculation

Make sure that the variable controlling block threshold for allocating
extra metadata sectors in case of a line with bad blocks does not get a
negative value. Otherwise, the line will be marked as corrupted and
wasted.
Signed-off-by: default avatarJavier González <javier@cnexlabs.com>
Signed-off-by: default avatarMatias Bjørling <m@bjorling.me>
Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
parent 21d22871
...@@ -710,7 +710,7 @@ static int pblk_lines_init(struct pblk *pblk) ...@@ -710,7 +710,7 @@ static int pblk_lines_init(struct pblk *pblk)
goto add_emeta_page; goto add_emeta_page;
} }
lm->emeta_bb = geo->nr_luns - i; lm->emeta_bb = geo->nr_luns > i ? geo->nr_luns - i : 0;
lm->min_blk_line = 1; lm->min_blk_line = 1;
if (geo->nr_luns > 1) if (geo->nr_luns > 1)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment