Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

bcache: set writeback_percent in a flexible range

Because CUTOFF_WRITEBACK is defined as 40, so before the changes of
dynamic cutoff writeback values, writeback_percent is limited to [0,
CUTOFF_WRITEBACK]. Any value larger than CUTOFF_WRITEBACK will be fixed
up to 40.

Now cutof writeback limit is a dynamic value bch_cutoff_writeback, so
the range of writeback_percent can be a more flexible range as [0,
bch_cutoff_writeback]. The flexibility is, it can be expended to a
larger or smaller range than [0, 40], depends on how value
bch_cutoff_writeback is specified.

The default value is still strongly recommended to most of users for
most of workloads. But for people who want to do research on bcache
writeback perforamnce tuning, they may have chance to specify more
flexible writeback_percent in range [0, 70].

Signed-off-by: Coly Li <colyli@suse.de>
Signed-off-by: Jens Axboe <axboe@kernel.dk>

authored by

Coly Li and committed by
Jens Axboe
cc38ca7e 9aaf5165

+2 -1
+2 -1
drivers/md/bcache/sysfs.c
··· 267 267 d_strtoul(writeback_running); 268 268 d_strtoul(writeback_delay); 269 269 270 - sysfs_strtoul_clamp(writeback_percent, dc->writeback_percent, 0, 40); 270 + sysfs_strtoul_clamp(writeback_percent, dc->writeback_percent, 271 + 0, bch_cutoff_writeback); 271 272 272 273 if (attr == &sysfs_writeback_rate) { 273 274 ssize_t ret;