diff options
author | Kent Overstreet <kmo@daterainc.com> | 2013-11-11 13:58:34 -0800 |
---|---|---|
committer | Kent Overstreet <kmo@daterainc.com> | 2013-12-16 14:22:59 -0800 |
commit | 16749c23c00c686ed168471963e3ddb0f3fcd855 (patch) | |
tree | c64fc28761ab499bbcdcf1f626576d1781c87ba9 /drivers/md/bcache/bcache.h | |
parent | 6d3d1a9c542b19dff1c7d7c8354d0869e4655287 (diff) | |
download | op-kernel-dev-16749c23c00c686ed168471963e3ddb0f3fcd855.zip op-kernel-dev-16749c23c00c686ed168471963e3ddb0f3fcd855.tar.gz |
bcache: New writeback PD controller
The old writeback PD controller could get into states where it had throttled all
the way down and take way too long to recover - it was too complicated to really
understand what it was doing.
This rewrites a good chunk of it to hopefully be simpler and make more sense,
and it also pays more attention to units which should make the behaviour a bit
easier to understand.
Signed-off-by: Kent Overstreet <kmo@daterainc.com>
Diffstat (limited to 'drivers/md/bcache/bcache.h')
-rw-r--r-- | drivers/md/bcache/bcache.h | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/md/bcache/bcache.h b/drivers/md/bcache/bcache.h index a7b1a76..754f4317 100644 --- a/drivers/md/bcache/bcache.h +++ b/drivers/md/bcache/bcache.h @@ -373,14 +373,14 @@ struct cached_dev { unsigned char writeback_percent; unsigned writeback_delay; - int writeback_rate_change; - int64_t writeback_rate_derivative; uint64_t writeback_rate_target; + int64_t writeback_rate_proportional; + int64_t writeback_rate_derivative; + int64_t writeback_rate_change; unsigned writeback_rate_update_seconds; unsigned writeback_rate_d_term; unsigned writeback_rate_p_term_inverse; - unsigned writeback_rate_d_smooth; }; enum alloc_watermarks { |