diff options
author | Kent Overstreet <kent.overstreet@gmail.com> | 2020-12-07 11:44:12 -0500 |
---|---|---|
committer | Kent Overstreet <kent.overstreet@gmail.com> | 2020-12-16 15:29:49 -0500 |
commit | 4fcee56dc5aa4217a544e30884ef9da1798270e4 (patch) | |
tree | ea7c3de224b0dc2bb375621de54d4784c6a246bd | |
parent | 2ed96c65dfce2754fbedfeda547b5c3b0cf33094 (diff) |
bcachefs: Fix rand_delete() test
When we didn't find a key to delete we were getting a null ptr deref.
Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
-rw-r--r-- | fs/bcachefs/tests.c | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/fs/bcachefs/tests.c b/fs/bcachefs/tests.c index 5f40b048dd0d..f1d09e3ada09 100644 --- a/fs/bcachefs/tests.c +++ b/fs/bcachefs/tests.c @@ -563,15 +563,14 @@ static int __do_delete(struct btree_trans *trans, struct bpos pos) iter = bch2_trans_get_iter(trans, BTREE_ID_XATTRS, pos, BTREE_ITER_INTENT); - ret = PTR_ERR_OR_ZERO(iter); - if (ret) - goto err; - k = bch2_btree_iter_peek(iter); ret = bkey_err(k); if (ret) goto err; + if (!k.k) + goto err; + bkey_init(&delete.k); delete.k.p = k.k->p; |