diff options
author | Kent Overstreet <kmo@daterainc.com> | 2014-03-17 15:13:26 -0700 |
---|---|---|
committer | Kent Overstreet <kmo@daterainc.com> | 2014-03-18 12:22:33 -0700 |
commit | 487dded86ea065317aea121bec8f1816f2f235c9 (patch) | |
tree | 3d333832a9b133156985af197d1bd2952b033c6b /drivers/md/bcache/btree.h | |
parent | 0bd143fd800055b1db756693289bbebdb93f2a73 (diff) | |
download | op-kernel-dev-487dded86ea065317aea121bec8f1816f2f235c9.zip op-kernel-dev-487dded86ea065317aea121bec8f1816f2f235c9.tar.gz |
bcache: Fix another bug recovering from unclean shutdown
The on disk bucket gens are allowed to be out of date, when we reuse buckets
that didn't have any live data in them. To deal with this, the initial gc has to
update the bucket gen when we find a pointer gen newer than the bucket's gen.
Unfortunately we weren't doing this for pointers in the journal that we're about
to replay.
Signed-off-by: Kent Overstreet <kmo@daterainc.com>
Diffstat (limited to 'drivers/md/bcache/btree.h')
-rw-r--r-- | drivers/md/bcache/btree.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/md/bcache/btree.h b/drivers/md/bcache/btree.h index af065e9..def9dc4 100644 --- a/drivers/md/bcache/btree.h +++ b/drivers/md/bcache/btree.h @@ -251,7 +251,7 @@ int bch_gc_thread_start(struct cache_set *); size_t bch_btree_gc_finish(struct cache_set *); void bch_moving_gc(struct cache_set *); int bch_btree_check(struct cache_set *); -uint8_t __bch_btree_mark_key(struct cache_set *, int, struct bkey *); +void bch_initial_mark_key(struct cache_set *, int, struct bkey *); static inline void wake_up_gc(struct cache_set *c) { |