summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatias Bjørling <matias@cnexlabs.com>2017-02-15 18:25:33 +0300
committerJens Axboe <axboe@fb.com>2017-02-15 18:27:21 +0300
commit6732c7401035c8464fd4ab5ff2e1bf86e5fcd74c (patch)
treeae0e66667ced2d480defc9a0d87089d35f3799dc
parent0e5ffd1cb5f7ce19f23cc829d5dc3ebb1491570f (diff)
downloadlinux-6732c7401035c8464fd4ab5ff2e1bf86e5fcd74c.tar.xz
lightnvm: set default lun range when no luns are specified
The create target ioctl takes a lun begin and lun end parameter, which defines the range of luns to initialize a target with. If the user does not set the parameters, it default to only using lun 0. Instead, defaults to use all luns in the OCSSD, as it is the usual behaviour users want. Signed-off-by: Matias Bjørling <matias@cnexlabs.com> Signed-off-by: Jens Axboe <axboe@fb.com>
-rw-r--r--drivers/lightnvm/core.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/lightnvm/core.c b/drivers/lightnvm/core.c
index 6ce76c0a75e1..5262ba66a7a7 100644
--- a/drivers/lightnvm/core.c
+++ b/drivers/lightnvm/core.c
@@ -1102,6 +1102,11 @@ static int __nvm_configure_create(struct nvm_ioctl_create *create)
}
s = &create->conf.s;
+ if (s->lun_begin == -1 && s->lun_end == -1) {
+ s->lun_begin = 0;
+ s->lun_end = dev->geo.nr_luns - 1;
+ }
+
if (s->lun_begin > s->lun_end || s->lun_end >= dev->geo.nr_luns) {
pr_err("nvm: lun out of bound (%u:%u > %u)\n",
s->lun_begin, s->lun_end, dev->geo.nr_luns - 1);