From: Kent Overstreet Date: Wed, 2 Oct 2019 04:29:37 +0000 (-0400) Subject: bcachefs: Fix an error path X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=ab9ff73322aad5cf6ea774047e47ef724077399b;p=linux.git bcachefs: Fix an error path It's possible to get -EIO in __btree_iter_traverse_all() after looping, with orig_iter NULL. Signed-off-by: Kent Overstreet --- diff --git a/fs/bcachefs/btree_iter.c b/fs/bcachefs/btree_iter.c index 8e9164aee4093..78bc82c7b9c33 100644 --- a/fs/bcachefs/btree_iter.c +++ b/fs/bcachefs/btree_iter.c @@ -1010,8 +1010,11 @@ retry_all: 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; }