android_kernel_motorola_sm6375/drivers/lightnvm
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Hans Holmberg 5d149bfabe lightnvm: pblk: add padding distribution sysfs attribute
When pblk receives a sync, all data up to that point in the write buffer
must be comitted to persistent storage, and as flash memory comes with a
minimal write size there is a significant cost involved both in terms
of time for completing the sync and in terms of write amplification
padded sectors for filling up to the minimal write size.

In order to get a better understanding of the costs involved for syncs,
Add a sysfs attribute to pblk: padded_dist, showing a normalized
distribution of sectors padded. In order to facilitate measurements of
specific workloads during the lifetime of the pblk instance, the
distribution can be reset by writing 0 to the attribute.

Do this by introducing counters for each possible padding:
{0..(minimal write size - 1)} and calculate the normalized distribution
when showing the attribute.

Signed-off-by: Hans Holmberg <hans.holmberg@cnexlabs.com>
Signed-off-by: Javier González <javier@cnexlabs.com>
Rearranged total_buckets statement in pblk_sysfs_get_padding_dist
Signed-off-by: Matias Bjørling <mb@lightnvm.io>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
2018-03-29 17:29:09 -06:00
..
core.c block: Add 'lock' as third argument to blk_alloc_queue_node() 2018-02-28 12:23:35 -07:00
Kconfig
Makefile
pblk-cache.c lightnvm: pblk: export write amplification counters to sysfs 2018-03-29 17:29:09 -06:00
pblk-core.c lightnvm: pblk: export write amplification counters to sysfs 2018-03-29 17:29:09 -06:00
pblk-gc.c lightnvm/pblk-gc: Delete an error message for a failed memory allocation in pblk_gc_line_prepare_ws() 2018-03-29 17:29:09 -06:00
pblk-init.c lightnvm: pblk: add padding distribution sysfs attribute 2018-03-29 17:29:09 -06:00
pblk-map.c lightnvm: pblk: export write amplification counters to sysfs 2018-03-29 17:29:09 -06:00
pblk-rb.c lightnvm: pblk: add padding distribution sysfs attribute 2018-03-29 17:29:09 -06:00
pblk-read.c lightnvm: pblk: add iostat support 2018-01-05 08:50:12 -07:00
pblk-recovery.c lightnvm: pblk: export write amplification counters to sysfs 2018-03-29 17:29:09 -06:00
pblk-rl.c lightnvm: pblk: use exact free block counter in RL 2018-01-05 08:50:12 -07:00
pblk-sysfs.c lightnvm: pblk: add padding distribution sysfs attribute 2018-03-29 17:29:09 -06:00
pblk-write.c
pblk.h lightnvm: pblk: add padding distribution sysfs attribute 2018-03-29 17:29:09 -06:00