OSDN Git Service

bcache: set writeback_percent in a flexible range
authorColy Li <colyli@suse.de>
Thu, 13 Dec 2018 14:53:56 +0000 (22:53 +0800)
committerJens Axboe <axboe@kernel.dk>
Thu, 13 Dec 2018 15:15:54 +0000 (08:15 -0700)
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>
drivers/md/bcache/sysfs.c

index 482b128..557a8a3 100644 (file)
@@ -267,7 +267,8 @@ STORE(__cached_dev)
        d_strtoul(writeback_running);
        d_strtoul(writeback_delay);
 
-       sysfs_strtoul_clamp(writeback_percent, dc->writeback_percent, 0, 40);
+       sysfs_strtoul_clamp(writeback_percent, dc->writeback_percent,
+                           0, bch_cutoff_writeback);
 
        if (attr == &sysfs_writeback_rate) {
                ssize_t ret;