Quellcode durchsuchen

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 <javier@cnexlabs.com>
Signed-off-by: Matias Bjørling <m@bjorling.me>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Javier González vor 7 Jahren
Ursprung
Commit
e6b754c252
1 geänderte Dateien mit 1 neuen und 1 gelöschten Zeilen
  1. 1 1
      drivers/lightnvm/pblk-init.c

+ 1 - 1
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)