diff options
-rw-r--r-- | fs/bcachefs/btree_iter.c | 15 | ||||
-rw-r--r-- | fs/bcachefs/btree_iter.h | 2 | ||||
-rw-r--r-- | fs/bcachefs/btree_key_cache.c | 2 | ||||
-rw-r--r-- | fs/bcachefs/btree_types.h | 5 |
4 files changed, 6 insertions, 18 deletions
diff --git a/fs/bcachefs/btree_iter.c b/fs/bcachefs/btree_iter.c index 834ebc95266a..73a30ef600ed 100644 --- a/fs/bcachefs/btree_iter.c +++ b/fs/bcachefs/btree_iter.c @@ -239,7 +239,7 @@ static inline bool btree_iter_get_locks(struct btree_trans *trans, } if (iter->uptodate == BTREE_ITER_NEED_RELOCK) - iter->uptodate = BTREE_ITER_NEED_PEEK; + iter->uptodate = BTREE_ITER_UPTODATE; bch2_trans_verify_locks(trans); @@ -756,8 +756,6 @@ static void __bch2_btree_iter_fix_key_modified(struct btree_iter *iter, if (bkey_iter_pos_cmp(l->b, where, &iter->real_pos) < 0) bch2_btree_node_iter_advance(&l->iter, l->b); - - btree_iter_set_dirty(iter, BTREE_ITER_NEED_PEEK); } void bch2_btree_iter_fix_key_modified(struct btree_trans *trans, @@ -863,11 +861,6 @@ fixup_done: b, t, k2); } } - - if (!b->c.level && - node_iter == &iter->l[0].iter && - iter_current_key_modified) - btree_iter_set_dirty(iter, BTREE_ITER_NEED_PEEK); } void bch2_btree_node_iter_fix(struct btree_trans *trans, @@ -1039,8 +1032,6 @@ static inline void __btree_iter_level_init(struct btree_iter *iter, */ if (level) bch2_btree_node_iter_peek(&l->iter, l->b); - - btree_iter_set_dirty(iter, BTREE_ITER_NEED_PEEK); } static inline void btree_iter_level_init(struct btree_trans *trans, @@ -1477,7 +1468,7 @@ static int btree_iter_traverse_one(struct btree_trans *trans, } } - iter->uptodate = BTREE_ITER_NEED_PEEK; + iter->uptodate = BTREE_ITER_UPTODATE; out: BUG_ON((ret == -EINTR) != !!trans->restarted); trace_iter_traverse(trans->ip, trace_ip, @@ -1666,8 +1657,6 @@ static void btree_iter_set_search_pos(struct btree_iter *iter, struct bpos new_p out: if (l != iter->level) btree_iter_set_dirty(iter, BTREE_ITER_NEED_TRAVERSE); - else - btree_iter_set_dirty(iter, BTREE_ITER_NEED_PEEK); bch2_btree_iter_verify(iter); #ifdef CONFIG_BCACHEFS_DEBUG diff --git a/fs/bcachefs/btree_iter.h b/fs/bcachefs/btree_iter.h index 55b20aed7b59..e4bfd9e75784 100644 --- a/fs/bcachefs/btree_iter.h +++ b/fs/bcachefs/btree_iter.h @@ -159,7 +159,7 @@ static inline bool bch2_btree_iter_upgrade(struct btree_trans *trans, return iter->locks_want < new_locks_want ? __bch2_btree_iter_upgrade(trans, iter, new_locks_want) - : iter->uptodate <= BTREE_ITER_NEED_PEEK; + : iter->uptodate == BTREE_ITER_UPTODATE; } void __bch2_btree_iter_downgrade(struct btree_iter *, unsigned); diff --git a/fs/bcachefs/btree_key_cache.c b/fs/bcachefs/btree_key_cache.c index 568c1f2704c2..924b67e79805 100644 --- a/fs/bcachefs/btree_key_cache.c +++ b/fs/bcachefs/btree_key_cache.c @@ -339,7 +339,7 @@ fill: if (!test_bit(BKEY_CACHED_ACCESSED, &ck->flags)) set_bit(BKEY_CACHED_ACCESSED, &ck->flags); - iter->uptodate = BTREE_ITER_NEED_PEEK; + iter->uptodate = BTREE_ITER_UPTODATE; if ((iter->flags & BTREE_ITER_INTENT) && !bch2_btree_iter_upgrade(trans, iter, 1)) { diff --git a/fs/bcachefs/btree_types.h b/fs/bcachefs/btree_types.h index 04ed6ad5be94..e3936a976347 100644 --- a/fs/bcachefs/btree_types.h +++ b/fs/bcachefs/btree_types.h @@ -218,9 +218,8 @@ enum btree_iter_type { enum btree_iter_uptodate { BTREE_ITER_UPTODATE = 0, - BTREE_ITER_NEED_PEEK = 1, - BTREE_ITER_NEED_RELOCK = 2, - BTREE_ITER_NEED_TRAVERSE = 3, + BTREE_ITER_NEED_RELOCK = 1, + BTREE_ITER_NEED_TRAVERSE = 2, }; #define BTREE_ITER_NO_NODE_GET_LOCKS ((struct btree *) 1) |