We were calling bch2_extent_can_insert() incorrectly; it should only be
called when the extents-to-keys pass is running because that's when we
could be splitting a compressed extent. Calling bch2_extent_can_insert()
without passing in a disk reservation was causing a null ptr deref.
Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
        if (unlikely(btree_node_old_extent_overwrite(b)))
                return BTREE_INSERT_BTREE_NODE_FULL;
 
-       ret = !btree_node_is_extents(b)
+       ret = !(iter->flags & BTREE_ITER_IS_EXTENTS)
                ? BTREE_INSERT_OK
                : bch2_extent_can_insert(trans, iter, insert);
        if (ret)