From: Javier González Date: Fri, 13 Oct 2017 12:46:27 +0000 (+0200) Subject: lightnvm: pblk: ensure right bad block calculation X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=e6b754c252bacebdfbe3c57e790431ab8f445d1f;p=openwrt%2Fstaging%2Fblogic.git 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: Javier González Signed-off-by: Matias Bjørling Signed-off-by: Jens Axboe --- diff --git a/drivers/lightnvm/pblk-init.c b/drivers/lightnvm/pblk-init.c index 3c3749186053..c7239c41ba40 100644 --- a/drivers/lightnvm/pblk-init.c +++ b/drivers/lightnvm/pblk-init.c @@ -710,7 +710,7 @@ 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; if (geo->nr_luns > 1)