summaryrefslogtreecommitdiffstats
path: root/drivers/lightnvm/pblk-init.c
diff options
context:
space:
mode:
authorJavier González <javier@cnexlabs.com>2018-01-05 14:16:14 +0100
committerJens Axboe <axboe@kernel.dk>2018-01-05 08:50:12 -0700
commite53927393b9987b7c986b6364c27111077f0ea3e (patch)
tree86876ba02fe38ea054b8c58f529a234df8a948f8 /drivers/lightnvm/pblk-init.c
parenta7689938ef4c8678ff78c44d11e4b0b897244714 (diff)
downloadlinux-e53927393b9987b7c986b6364c27111077f0ea3e.tar.bz2
lightnvm: set target over-provision on create ioctl
Allow to set the over-provision percentage on target creation. In case that the value is not provided, fall back to the default value set by the target. In pblk, set the default OP to 11% of the total size of the device Signed-off-by: Javier González <javier@cnexlabs.com> Signed-off-by: Hans Holmberg <hans.holmberg@cnexlabs.com> Signed-off-by: Matias Bjørling <m@bjorling.me> Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'drivers/lightnvm/pblk-init.c')
-rw-r--r--drivers/lightnvm/pblk-init.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/lightnvm/pblk-init.c b/drivers/lightnvm/pblk-init.c
index c8a718249e26..533f6908e238 100644
--- a/drivers/lightnvm/pblk-init.c
+++ b/drivers/lightnvm/pblk-init.c
@@ -585,7 +585,10 @@ static void pblk_set_provision(struct pblk *pblk, long nr_free_blks)
sector_t provisioned;
int sec_meta, blk_meta;
- pblk->op = 20;
+ if (geo->op == NVM_TARGET_DEFAULT_OP)
+ pblk->op = PBLK_DEFAULT_OP;
+ else
+ pblk->op = geo->op;
provisioned = nr_free_blks;
provisioned *= (100 - pblk->op);