* For extents, the iterator may have skipped past deleted keys (but not
* whiteouts)
*/
- k = b->c.level || iter->flags & BTREE_ITER_IS_EXTENTS
+ k = b->c.level || btree_node_type_is_extents(iter->btree_id)
? bch2_btree_node_iter_prev_filter(&tmp, b, KEY_TYPE_discard)
: bch2_btree_node_iter_prev_all(&tmp, b);
if (k && bkey_iter_pos_cmp(b, k, &pos) >= 0) {
if (!bch2_btree_node_iter_end(node_iter) &&
iter_current_key_modified &&
(b->c.level ||
- (iter->flags & BTREE_ITER_IS_EXTENTS))) {
+ btree_node_type_is_extents(iter->btree_id))) {
struct bset_tree *t;
struct bkey_packed *k, *k2, *p;
iter->flags |= BTREE_ITER_KEEP_UNTIL_COMMIT;
- if (iter->flags & BTREE_ITER_IS_EXTENTS) {
+ if (btree_node_type_is_extents(iter->btree_id)) {
iter->pos_after_commit = k->k.p;
iter->flags |= BTREE_ITER_SET_POS_AFTER_COMMIT;
}
*/
delete.k.p = iter->pos;
- if (iter->flags & BTREE_ITER_IS_EXTENTS) {
+ if (btree_node_type_is_extents(iter->btree_id)) {
unsigned max_sectors =
KEY_SIZE_MAX & (~0 << trans->c->block_bits);