summaryrefslogtreecommitdiffstats
path: root/drivers/lightnvm
diff options
context:
space:
mode:
authorMatias Bjørling <m@bjorling.me>2016-02-19 13:56:58 +0100
committerJens Axboe <axboe@fb.com>2016-03-03 22:45:53 +0100
commitd5bdec8ddb9f5fac3b351bed463a7132f6ba907b (patch)
treeda9483977df6e4d457d0ea0687d2d990ed961184 /drivers/lightnvm
parentlightnvm: fix up nonsensical configure overrun checking (diff)
downloadlinux-d5bdec8ddb9f5fac3b351bed463a7132f6ba907b.tar.xz
linux-d5bdec8ddb9f5fac3b351bed463a7132f6ba907b.zip
lightnvm: fold get bb tbl when using dual/quad plane mode
When the media manager runs in dual or quad plane mode, lightnvm abstracts away plane specific commands. This poses a problem for get bad block table, as it reports bad blocks per plane, making the table either two or four times bigger than expected. Fold the bad block list before returning. Signed-off-by: Matias Bjørling <m@bjorling.me> Signed-off-by: Jens Axboe <axboe@fb.com>
Diffstat (limited to 'drivers/lightnvm')
-rw-r--r--drivers/lightnvm/core.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/lightnvm/core.c b/drivers/lightnvm/core.c
index 782ac5d60a49..968ba7ed4158 100644
--- a/drivers/lightnvm/core.c
+++ b/drivers/lightnvm/core.c
@@ -250,7 +250,7 @@ int nvm_set_rqd_ppalist(struct nvm_dev *dev, struct nvm_rq *rqd,
return 0;
}
- plane_cnt = (1 << dev->plane_mode);
+ plane_cnt = dev->plane_mode;
rqd->nr_pages = plane_cnt * nr_ppas;
if (dev->ops->max_phys_sect < rqd->nr_pages)