aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/lightnvm/core.c
diff options
context:
space:
mode:
authorWenwei Tao <ww.tao0320@gmail.com>2016-03-03 09:06:37 -0500
committerJens Axboe <axboe@fb.com>2016-03-18 21:10:37 -0400
commit4c9dacb82d5aa36aa2568df60d897f2eb3d8819b (patch)
treebd8e6a81aed966d79e50fc5cee3273c88a1a52ce /drivers/lightnvm/core.c
parent3681c85dffda70e551dead31c8d102bd69033fe8 (diff)
lightnvm: specify target's logical address area
We can create more than one target on a lightnvm device by specifying its begin lun and end lun. But only specify the physical address area is not enough, we need to get the corresponding non- intersection logical address area division from the backend device's logcial address space. Otherwise the targets on the device might use the same logical addresses cause incorrect information in the device's l2p table. Signed-off-by: Wenwei Tao <ww.tao0320@gmail.com> Signed-off-by: Matias Bjørling <m@bjorling.me> Signed-off-by: Jens Axboe <axboe@fb.com>
Diffstat (limited to 'drivers/lightnvm/core.c')
-rw-r--r--drivers/lightnvm/core.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/lightnvm/core.c b/drivers/lightnvm/core.c
index 0d1fb6b40c46..2925fd0b82bb 100644
--- a/drivers/lightnvm/core.c
+++ b/drivers/lightnvm/core.c
@@ -466,6 +466,7 @@ static int nvm_core_init(struct nvm_dev *dev)
466 dev->total_secs = dev->nr_luns * dev->sec_per_lun; 466 dev->total_secs = dev->nr_luns * dev->sec_per_lun;
467 INIT_LIST_HEAD(&dev->online_targets); 467 INIT_LIST_HEAD(&dev->online_targets);
468 mutex_init(&dev->mlock); 468 mutex_init(&dev->mlock);
469 spin_lock_init(&dev->lock);
469 470
470 return 0; 471 return 0;
471} 472}