Skip to content

Commit b6fb426

Browse files
author
Kent Overstreet
committed
bcachefs: for_each_bset() declares loop iter
Signed-off-by: Kent Overstreet <[email protected]>
1 parent e2f48c4 commit b6fb426

File tree

6 files changed

+14
-34
lines changed

6 files changed

+14
-34
lines changed

fs/bcachefs/bset.c

Lines changed: 10 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -103,8 +103,6 @@ void bch2_dump_bset(struct bch_fs *c, struct btree *b,
103103

104104
void bch2_dump_btree_node(struct bch_fs *c, struct btree *b)
105105
{
106-
struct bset_tree *t;
107-
108106
console_lock();
109107
for_each_bset(b, t)
110108
bch2_dump_bset(c, b, bset(b, t), t - b->set);
@@ -136,7 +134,6 @@ void bch2_dump_btree_node_iter(struct btree *b,
136134

137135
struct btree_nr_keys bch2_btree_node_count_keys(struct btree *b)
138136
{
139-
struct bset_tree *t;
140137
struct bkey_packed *k;
141138
struct btree_nr_keys nr = {};
142139

@@ -198,7 +195,6 @@ void bch2_btree_node_iter_verify(struct btree_node_iter *iter,
198195
{
199196
struct btree_node_iter_set *set, *s2;
200197
struct bkey_packed *k, *p;
201-
struct bset_tree *t;
202198

203199
if (bch2_btree_node_iter_end(iter))
204200
return;
@@ -213,12 +209,14 @@ void bch2_btree_node_iter_verify(struct btree_node_iter *iter,
213209
/* Verify that set->end is correct: */
214210
btree_node_iter_for_each(iter, set) {
215211
for_each_bset(b, t)
216-
if (set->end == t->end_offset)
212+
if (set->end == t->end_offset) {
213+
BUG_ON(set->k < btree_bkey_first_offset(t) ||
214+
set->k >= t->end_offset);
217215
goto found;
216+
}
218217
BUG();
219218
found:
220-
BUG_ON(set->k < btree_bkey_first_offset(t) ||
221-
set->k >= t->end_offset);
219+
do {} while (0);
222220
}
223221

224222
/* Verify iterator is sorted: */
@@ -377,11 +375,9 @@ static struct bkey_float *bkey_float(const struct btree *b,
377375
return ro_aux_tree_base(b, t)->f + idx;
378376
}
379377

380-
static void bset_aux_tree_verify(const struct btree *b)
378+
static void bset_aux_tree_verify(struct btree *b)
381379
{
382380
#ifdef CONFIG_BCACHEFS_DEBUG
383-
const struct bset_tree *t;
384-
385381
for_each_bset(b, t) {
386382
if (t->aux_data_offset == U16_MAX)
387383
continue;
@@ -685,20 +681,20 @@ static __always_inline void make_bfloat(struct btree *b, struct bset_tree *t,
685681
}
686682

687683
/* bytes remaining - only valid for last bset: */
688-
static unsigned __bset_tree_capacity(const struct btree *b, const struct bset_tree *t)
684+
static unsigned __bset_tree_capacity(struct btree *b, const struct bset_tree *t)
689685
{
690686
bset_aux_tree_verify(b);
691687

692688
return btree_aux_data_bytes(b) - t->aux_data_offset * sizeof(u64);
693689
}
694690

695-
static unsigned bset_ro_tree_capacity(const struct btree *b, const struct bset_tree *t)
691+
static unsigned bset_ro_tree_capacity(struct btree *b, const struct bset_tree *t)
696692
{
697693
return __bset_tree_capacity(b, t) /
698694
(sizeof(struct bkey_float) + sizeof(u8));
699695
}
700696

701-
static unsigned bset_rw_tree_capacity(const struct btree *b, const struct bset_tree *t)
697+
static unsigned bset_rw_tree_capacity(struct btree *b, const struct bset_tree *t)
702698
{
703699
return __bset_tree_capacity(b, t) / sizeof(struct rw_aux_tree);
704700
}
@@ -1374,8 +1370,6 @@ void bch2_btree_node_iter_init(struct btree_node_iter *iter,
13741370
void bch2_btree_node_iter_init_from_start(struct btree_node_iter *iter,
13751371
struct btree *b)
13761372
{
1377-
struct bset_tree *t;
1378-
13791373
memset(iter, 0, sizeof(*iter));
13801374

13811375
for_each_bset(b, t)
@@ -1481,7 +1475,6 @@ struct bkey_packed *bch2_btree_node_iter_prev_all(struct btree_node_iter *iter,
14811475
{
14821476
struct bkey_packed *k, *prev = NULL;
14831477
struct btree_node_iter_set *set;
1484-
struct bset_tree *t;
14851478
unsigned end = 0;
14861479

14871480
if (bch2_expensive_debug_checks)
@@ -1550,9 +1543,7 @@ struct bkey_s_c bch2_btree_node_iter_peek_unpack(struct btree_node_iter *iter,
15501543

15511544
void bch2_btree_keys_stats(const struct btree *b, struct bset_stats *stats)
15521545
{
1553-
const struct bset_tree *t;
1554-
1555-
for_each_bset(b, t) {
1546+
for_each_bset_c(b, t) {
15561547
enum bset_aux_tree_type type = bset_aux_tree_type(t);
15571548
size_t j;
15581549

fs/bcachefs/bset.h

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -206,7 +206,10 @@ static inline size_t btree_aux_data_u64s(const struct btree *b)
206206
}
207207

208208
#define for_each_bset(_b, _t) \
209-
for (_t = (_b)->set; _t < (_b)->set + (_b)->nsets; _t++)
209+
for (struct bset_tree *_t = (_b)->set; _t < (_b)->set + (_b)->nsets; _t++)
210+
211+
#define for_each_bset_c(_b, _t) \
212+
for (const struct bset_tree *_t = (_b)->set; _t < (_b)->set + (_b)->nsets; _t++)
210213

211214
#define bset_tree_for_each_key(_b, _t, _k) \
212215
for (_k = btree_bkey_first(_b, _t); \
@@ -294,7 +297,6 @@ static inline struct bset_tree *
294297
bch2_bkey_to_bset_inlined(struct btree *b, struct bkey_packed *k)
295298
{
296299
unsigned offset = __btree_node_key_to_offset(b, k);
297-
struct bset_tree *t;
298300

299301
for_each_bset(b, t)
300302
if (offset <= t->end_offset) {

fs/bcachefs/btree_cache.c

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -881,7 +881,6 @@ static struct btree *__bch2_btree_node_get(struct btree_trans *trans, struct btr
881881
struct bch_fs *c = trans->c;
882882
struct btree_cache *bc = &c->btree_cache;
883883
struct btree *b;
884-
struct bset_tree *t;
885884
bool need_relock = false;
886885
int ret;
887886

@@ -1001,7 +1000,6 @@ struct btree *bch2_btree_node_get(struct btree_trans *trans, struct btree_path *
10011000
{
10021001
struct bch_fs *c = trans->c;
10031002
struct btree *b;
1004-
struct bset_tree *t;
10051003
int ret;
10061004

10071005
EBUG_ON(level >= BTREE_MAX_DEPTH);
@@ -1078,7 +1076,6 @@ struct btree *bch2_btree_node_get_noiter(struct btree_trans *trans,
10781076
struct bch_fs *c = trans->c;
10791077
struct btree_cache *bc = &c->btree_cache;
10801078
struct btree *b;
1081-
struct bset_tree *t;
10821079
int ret;
10831080

10841081
EBUG_ON(level >= BTREE_MAX_DEPTH);

fs/bcachefs/btree_io.c

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -229,7 +229,6 @@ static bool should_compact_bset(struct btree *b, struct bset_tree *t,
229229

230230
static bool bch2_drop_whiteouts(struct btree *b, enum compact_mode mode)
231231
{
232-
struct bset_tree *t;
233232
bool ret = false;
234233

235234
for_each_bset(b, t) {
@@ -451,8 +450,6 @@ static bool btree_node_compact(struct bch_fs *c, struct btree *b)
451450

452451
void bch2_btree_build_aux_trees(struct btree *b)
453452
{
454-
struct bset_tree *t;
455-
456453
for_each_bset(b, t)
457454
bch2_bset_build_aux_tree(b, t,
458455
!bset_written(b, bset(b, t)) &&
@@ -637,8 +634,6 @@ static int __btree_err(int ret,
637634
__cold
638635
void bch2_btree_node_drop_keys_outside_node(struct btree *b)
639636
{
640-
struct bset_tree *t;
641-
642637
for_each_bset(b, t) {
643638
struct bset *i = bset(b, t);
644639
struct bkey_packed *k;
@@ -1987,7 +1982,6 @@ static void btree_write_submit(struct work_struct *work)
19871982
void __bch2_btree_node_write(struct bch_fs *c, struct btree *b, unsigned flags)
19881983
{
19891984
struct btree_write_bio *wbio;
1990-
struct bset_tree *t;
19911985
struct bset *i;
19921986
struct btree_node *bn = NULL;
19931987
struct btree_node_entry *bne = NULL;
@@ -2244,7 +2238,6 @@ bool bch2_btree_post_write_cleanup(struct bch_fs *c, struct btree *b)
22442238
{
22452239
bool invalidated_iter = false;
22462240
struct btree_node_entry *bne;
2247-
struct bset_tree *t;
22482241

22492242
if (!btree_node_just_written(b))
22502243
return false;

fs/bcachefs/btree_io.h

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -81,8 +81,6 @@ static inline bool should_compact_bset_lazy(struct btree *b,
8181

8282
static inline bool bch2_maybe_compact_whiteouts(struct bch_fs *c, struct btree *b)
8383
{
84-
struct bset_tree *t;
85-
8684
for_each_bset(b, t)
8785
if (should_compact_bset_lazy(b, t))
8886
return bch2_compact_whiteouts(c, b, COMPACT_LAZY);

fs/bcachefs/btree_update_interior.c

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -160,7 +160,6 @@ int bch2_btree_node_check_topology(struct btree_trans *trans, struct btree *b)
160160
static void __bch2_btree_calc_format(struct bkey_format_state *s, struct btree *b)
161161
{
162162
struct bkey_packed *k;
163-
struct bset_tree *t;
164163
struct bkey uk;
165164

166165
for_each_bset(b, t)

0 commit comments

Comments
 (0)