diff options
author | Kent Overstreet <kent.overstreet@gmail.com> | 2019-12-16 15:37:47 -0500 |
---|---|---|
committer | Kent Overstreet <kent.overstreet@gmail.com> | 2021-04-27 12:17:58 -0400 |
commit | 9559f97cb3a423433de8eb2f691232058ce1bb3b (patch) | |
tree | 28f2a67a7547343dfeaa3a3bf53f880a0ac1128e /fs | |
parent | 5b281878afb678484620b7814757d79ac42d586f (diff) |
bcachefs: Fix a null ptr deref in btree_iter_traverse_one()
When traversing nodes and we've reached the end of the btree, the
current btree node will be NULL.
Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
Diffstat (limited to 'fs')
-rw-r--r-- | fs/bcachefs/btree_iter.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/fs/bcachefs/btree_iter.c b/fs/bcachefs/btree_iter.c index a4180124d7d1..918e6fe4a0a1 100644 --- a/fs/bcachefs/btree_iter.c +++ b/fs/bcachefs/btree_iter.c @@ -1148,7 +1148,8 @@ static int btree_iter_traverse_one(struct btree_iter *iter) iter->uptodate = BTREE_ITER_NEED_PEEK; bch2_btree_trans_verify_locks(iter->trans); - __bch2_btree_iter_verify(iter, iter->l[iter->level].b); + if (btree_iter_node(iter, iter->level)) + __bch2_btree_iter_verify(iter, iter->l[iter->level].b); return 0; } |