aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/md/bcache/writeback.h
diff options
context:
space:
mode:
authorSlava Pestov <sp@daterainc.com>2014-05-01 13:48:57 -0700
committerKent Overstreet <kmo@daterainc.com>2014-08-04 15:23:03 -0700
commit9e5c353510b26500bd6b8309823ac9ef2837b761 (patch)
treeff1ff3500ed20d3b9ac2dc3338e1d6ad87e9e0ea /drivers/md/bcache/writeback.h
parentbcache: wait for buckets when allocating new btree root (diff)
downloadlinux-dev-9e5c353510b26500bd6b8309823ac9ef2837b761.tar.xz
linux-dev-9e5c353510b26500bd6b8309823ac9ef2837b761.zip
bcache: fix uninterruptible sleep in writeback thread
There were two issues here: - writeback thread did not start until the device first became dirty - writeback thread used uninterruptible sleep once running Without this patch I see kernel warnings printed and a load average of 1.52 after booting my test VM. With this patch the warnings are gone and the load average is near 0.00 as expected. Signed-off-by: Kent Overstreet <kmo@daterainc.com>
Diffstat (limited to 'drivers/md/bcache/writeback.h')
-rw-r--r--drivers/md/bcache/writeback.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/md/bcache/writeback.h b/drivers/md/bcache/writeback.h
index e2f8598937ac..0a9dab187b79 100644
--- a/drivers/md/bcache/writeback.h
+++ b/drivers/md/bcache/writeback.h
@@ -85,6 +85,7 @@ static inline void bch_writeback_add(struct cached_dev *dc)
void bcache_dev_sectors_dirty_add(struct cache_set *, unsigned, uint64_t, int);
void bch_sectors_dirty_init(struct cached_dev *dc);
-int bch_cached_dev_writeback_init(struct cached_dev *);
+void bch_cached_dev_writeback_init(struct cached_dev *);
+int bch_cached_dev_writeback_start(struct cached_dev *);
#endif