diff options
author | Kent Overstreet <kmo@daterainc.com> | 2014-02-20 03:48:26 (GMT) |
---|---|---|
committer | Kent Overstreet <kmo@daterainc.com> | 2014-02-26 02:42:49 (GMT) |
commit | dabb44334060b4b84051b34c58573e57cc7432b2 (patch) | |
tree | 7372c3f3d4d6309c4ee4214494f93c6e7fcc3d58 /drivers/md/bcache/super.c | |
parent | 1b4eaf3d3809a658c85911e92d9ff64086931efa (diff) | |
download | linux-dabb44334060b4b84051b34c58573e57cc7432b2.tar.xz |
bcache: Fix a shutdown bug
Shutdown wasn't cancelling/waiting on journal_write_work()
Signed-off-by: Kent Overstreet <kmo@daterainc.com>
Diffstat (limited to 'drivers/md/bcache/super.c')
-rw-r--r-- | drivers/md/bcache/super.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/md/bcache/super.c b/drivers/md/bcache/super.c index 24a3a15..c70521f 100644 --- a/drivers/md/bcache/super.c +++ b/drivers/md/bcache/super.c @@ -1403,6 +1403,10 @@ static void cache_set_flush(struct closure *cl) if (ca->alloc_thread) kthread_stop(ca->alloc_thread); + cancel_delayed_work_sync(&c->journal.work); + /* flush last journal entry if needed */ + c->journal.work.work.func(&c->journal.work.work); + closure_return(cl); } |