diff --git a/fs/bcachefs/btree_iter.c b/fs/bcachefs/btree_iter.c index 8e9164aee409..78bc82c7b9c3 100644 --- a/fs/bcachefs/btree_iter.c +++ b/fs/bcachefs/btree_iter.c @@ -1010,8 +1010,11 @@ static int __btree_iter_traverse_all(struct btree_trans *trans, if (unlikely(ret == -EIO)) { trans->error = true; - orig_iter->flags |= BTREE_ITER_ERROR; - orig_iter->l[orig_iter->level].b = BTREE_ITER_NO_NODE_ERROR; + if (orig_iter) { + orig_iter->flags |= BTREE_ITER_ERROR; + orig_iter->l[orig_iter->level].b = + BTREE_ITER_NO_NODE_ERROR; + } goto out; }