summaryrefslogtreecommitdiffstats
path: root/drivers/md/bcache/bcache.h
diff options
context:
space:
mode:
authorKent Overstreet <kmo@daterainc.com>2013-11-11 13:58:34 -0800
committerKent Overstreet <kmo@daterainc.com>2013-12-16 14:22:59 -0800
commit16749c23c00c686ed168471963e3ddb0f3fcd855 (patch)
treec64fc28761ab499bbcdcf1f626576d1781c87ba9 /drivers/md/bcache/bcache.h
parent6d3d1a9c542b19dff1c7d7c8354d0869e4655287 (diff)
downloadblackbird-op-linux-16749c23c00c686ed168471963e3ddb0f3fcd855.tar.gz
blackbird-op-linux-16749c23c00c686ed168471963e3ddb0f3fcd855.zip
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.h6
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/md/bcache/bcache.h b/drivers/md/bcache/bcache.h
index a7b1a7631ed2..754f43177483 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 {
OpenPOWER on IntegriCloud