[GIT PULL 19/37] lightnvm: fix bad block initialization

From: Matias BjÃrling
Date: Thu Mar 29 2018 - 18:13:01 EST


From: Heiner Litz <hlitz@xxxxxxxx>

fix reading bad block device information to correctly setup the per line
blk_bitmap during lightnvm initialization

Signed-off-by: Heiner Litz <hlitz@xxxxxxxx>
Signed-off-by: Matias BjÃrling <mb@xxxxxxxxxxx>
---
drivers/lightnvm/pblk-init.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/lightnvm/pblk-init.c b/drivers/lightnvm/pblk-init.c
index 43b835678f48..ee936c1ff764 100644
--- a/drivers/lightnvm/pblk-init.c
+++ b/drivers/lightnvm/pblk-init.c
@@ -460,10 +460,11 @@ static int pblk_bb_line(struct pblk *pblk, struct pblk_line *line,
struct nvm_tgt_dev *dev = pblk->dev;
struct nvm_geo *geo = &dev->geo;
int i, bb_cnt = 0;
+ int blk_per_lun = geo->nr_chks * geo->plane_mode;

for (i = 0; i < blk_per_line; i++) {
struct pblk_lun *rlun = &pblk->luns[i];
- u8 *lun_bb_log = bb_log + i * blk_per_line;
+ u8 *lun_bb_log = bb_log + i * blk_per_lun;

if (lun_bb_log[line->id] == NVM_BLK_T_FREE)
continue;
--
2.11.0