linux/drivers/lightnvm
Marcin Dziegielewski ffc03fb7a5 lightnvm: pblk: handle case when mw_cunits equals to 0
Some devices can expose mw_cunits equal to 0, it can cause the
creation of too small write buffer and cause performance to drop
on write workloads.

Additionally, write buffer size must cover write data requirements,
such as WS_MIN and MW_CUNITS - it must be greater than or equal to
the larger one multiplied by the number of PUs. However, for
performance reasons, use the WS_OPT value to calculation instead of
WS_MIN.

Because the place where buffer size is calculated was changed, this
patch also removes pgs_in_buffer filed in pblk structure.

Signed-off-by: Marcin Dziegielewski <marcin.dziegielewski@intel.com>
Signed-off-by: Igor Konopko <igor.j.konopko@intel.com>
Reviewed-by: Javier González <javier@cnexlabs.com>
Signed-off-by: Matias Bjørling <mb@lightnvm.io>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
2018-07-13 08:14:29 -06:00
..
core.c lightnvm: pass flag on graceful teardown to targets 2018-06-01 07:43:53 -06:00
Kconfig lightnvm: Remove depends on HAS_DMA in case of platform dependency 2018-06-22 12:07:11 -06:00
Makefile lightnvm: remove rrpc 2018-01-05 08:50:12 -07:00
pblk-cache.c lightnvm: pblk: kick writer on new flush points 2018-06-01 09:02:53 -06:00
pblk-core.c lightnvm: pblk: take bitmap alloc. out of critical section 2018-06-01 09:02:53 -06:00
pblk-gc.c treewide: Use array_size() in vmalloc() 2018-06-12 16:19:22 -07:00
pblk-init.c lightnvm: pblk: handle case when mw_cunits equals to 0 2018-07-13 08:14:29 -06:00
pblk-map.c lightnvm: pblk: fail gracefully on line alloc. failure 2018-06-01 07:43:53 -06:00
pblk-rb.c docs: Fix some broken references 2018-06-15 18:10:01 -03:00
pblk-read.c lightnvm: pblk: remove unnecessary bio_get/put 2018-06-01 09:02:53 -06:00
pblk-recovery.c treewide: Use array_size() in vzalloc() 2018-06-12 16:19:22 -07:00
pblk-rl.c lightnvm: pblk: garbage collect lines with failed writes 2018-06-01 09:02:53 -06:00
pblk-sysfs.c lightnvm: pblk: garbage collect lines with failed writes 2018-06-01 09:02:53 -06:00
pblk-write.c lightnvm: pblk: garbage collect lines with failed writes 2018-06-01 09:02:53 -06:00
pblk.h lightnvm: pblk: handle case when mw_cunits equals to 0 2018-07-13 08:14:29 -06:00