Commit 50310164 authored by Kent Overstreet's avatar Kent Overstreet

bcache: Kill bch_next_recurse_key()

This dates from before the btree iterator, and now it's finally gone
Signed-off-by: default avatarKent Overstreet <kmo@daterainc.com>
parent bc9389ee
...@@ -952,14 +952,6 @@ struct bkey *bch_btree_iter_next_filter(struct btree_iter *iter, ...@@ -952,14 +952,6 @@ struct bkey *bch_btree_iter_next_filter(struct btree_iter *iter,
return ret; return ret;
} }
struct bkey *bch_next_recurse_key(struct btree *b, struct bkey *search)
{
struct btree_iter iter;
bch_btree_iter_init(b, &iter, search);
return bch_btree_iter_next_filter(&iter, b, bch_ptr_bad);
}
/* Mergesort */ /* Mergesort */
static void sort_key_next(struct btree_iter *iter, static void sort_key_next(struct btree_iter *iter,
......
...@@ -303,7 +303,6 @@ static inline bool ptr_available(struct cache_set *c, const struct bkey *k, ...@@ -303,7 +303,6 @@ static inline bool ptr_available(struct cache_set *c, const struct bkey *k,
typedef bool (*ptr_filter_fn)(struct btree *, const struct bkey *); typedef bool (*ptr_filter_fn)(struct btree *, const struct bkey *);
struct bkey *bch_next_recurse_key(struct btree *, struct bkey *);
struct bkey *bch_btree_iter_next(struct btree_iter *); struct bkey *bch_btree_iter_next(struct btree_iter *);
struct bkey *bch_btree_iter_next_filter(struct btree_iter *, struct bkey *bch_btree_iter_next_filter(struct btree_iter *,
struct btree *, ptr_filter_fn); struct btree *, ptr_filter_fn);
......
...@@ -1680,9 +1680,9 @@ int bch_gc_thread_start(struct cache_set *c) ...@@ -1680,9 +1680,9 @@ int bch_gc_thread_start(struct cache_set *c)
static int bch_btree_check_recurse(struct btree *b, struct btree_op *op, static int bch_btree_check_recurse(struct btree *b, struct btree_op *op,
unsigned long **seen) unsigned long **seen)
{ {
int ret; int ret = 0;
unsigned i; unsigned i;
struct bkey *k; struct bkey *k, *p = NULL;
struct bucket *g; struct bucket *g;
struct btree_iter iter; struct btree_iter iter;
...@@ -1709,19 +1709,18 @@ static int bch_btree_check_recurse(struct btree *b, struct btree_op *op, ...@@ -1709,19 +1709,18 @@ static int bch_btree_check_recurse(struct btree *b, struct btree_op *op,
} }
if (b->level) { if (b->level) {
k = bch_next_recurse_key(b, &ZERO_KEY); bch_btree_iter_init(b, &iter, NULL);
while (k) { do {
struct bkey *p = bch_next_recurse_key(b, k); k = bch_btree_iter_next_filter(&iter, b, bch_ptr_bad);
if (p) if (k)
btree_node_prefetch(b->c, p, b->level - 1); btree_node_prefetch(b->c, k, b->level - 1);
ret = btree(check_recurse, k, b, op, seen); if (p)
if (ret) ret = btree(check_recurse, p, b, op, seen);
return ret;
k = p; p = k;
} } while (p && !ret);
} }
return 0; return 0;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment