mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2025-01-01 02:36:02 +00:00
bcachefs: Clean up bch2_extent_can_insert
It was using an internal btree node iterator interface, when bch2_btree_iter_peek_slot() sufficed. We were hitting a null ptr deref that looked like it was from the iterator not being uptodate - this will also fix that. Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com> Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
This commit is contained in:
parent
a5cd80ea99
commit
ef470b4817
@ -192,18 +192,13 @@ bch2_extent_can_insert(struct btree_trans *trans,
|
||||
struct btree_iter *iter,
|
||||
struct bkey_i *insert)
|
||||
{
|
||||
struct btree_iter_level *l = &iter->l[0];
|
||||
struct btree_node_iter node_iter = l->iter;
|
||||
struct bkey_packed *_k;
|
||||
struct bkey_s_c k;
|
||||
struct bkey unpacked;
|
||||
int sectors;
|
||||
int ret, sectors;
|
||||
|
||||
_k = bch2_btree_node_iter_peek(&node_iter, l->b);
|
||||
if (!_k)
|
||||
return BTREE_INSERT_OK;
|
||||
|
||||
k = bkey_disassemble(l->b, _k, &unpacked);
|
||||
k = bch2_btree_iter_peek_slot(iter);
|
||||
ret = bkey_err(k);
|
||||
if (ret)
|
||||
return ret;
|
||||
|
||||
/* Check if we're splitting a compressed extent: */
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user