Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 50310164 authored by Kent Overstreet's avatar Kent Overstreet
Browse files

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
Loading
Loading
Loading
Loading
+0 −8
Original line number Diff line number Diff line
@@ -952,14 +952,6 @@ struct bkey *bch_btree_iter_next_filter(struct btree_iter *iter,
	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 */

static void sort_key_next(struct btree_iter *iter,
+0 −1
Original line number Diff line number Diff line
@@ -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 *);

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_filter(struct btree_iter *,
					struct btree *, ptr_filter_fn);
+11 −12
Original line number Diff line number Diff line
@@ -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,
				   unsigned long **seen)
{
	int ret;
	int ret = 0;
	unsigned i;
	struct bkey *k;
	struct bkey *k, *p = NULL;
	struct bucket *g;
	struct btree_iter iter;

@@ -1709,19 +1709,18 @@ static int bch_btree_check_recurse(struct btree *b, struct btree_op *op,
	}

	if (b->level) {
		k = bch_next_recurse_key(b, &ZERO_KEY);
		bch_btree_iter_init(b, &iter, NULL);

		while (k) {
			struct bkey *p = bch_next_recurse_key(b, k);
			if (p)
				btree_node_prefetch(b->c, p, b->level - 1);
		do {
			k = bch_btree_iter_next_filter(&iter, b, bch_ptr_bad);
			if (k)
				btree_node_prefetch(b->c, k, b->level - 1);

			ret = btree(check_recurse, k, b, op, seen);
			if (ret)
				return ret;
			if (p)
				ret = btree(check_recurse, p, b, op, seen);

			k = p;
		}
			p = k;
		} while (p && !ret);
	}

	return 0;