On 1/7/2025 7:15 AM, Soma Nakata wrote: > `range_tree_set` might fail and return -ENOMEM, > causing subsequent `bpf_arena_alloc_pages` to fail. > Added the error handling. > > Signed-off-by: Soma Nakata <soma.nakata@xxxxxxxxxxxxxxxxxxx> > --- > kernel/bpf/arena.c | 6 +++++- > 1 file changed, 5 insertions(+), 1 deletion(-) > > diff --git a/kernel/bpf/arena.c b/kernel/bpf/arena.c > index 41a76ca56040..4b22a651b5d5 100644 > --- a/kernel/bpf/arena.c > +++ b/kernel/bpf/arena.c > @@ -138,7 +138,11 @@ static struct bpf_map *arena_map_alloc(union bpf_attr *attr) > INIT_LIST_HEAD(&arena->vma_list); > bpf_map_init_from_attr(&arena->map, attr); > range_tree_init(&arena->rt); > - range_tree_set(&arena->rt, 0, attr->max_entries); > + err = range_tree_set(&arena->rt, 0, attr->max_entries); > + if (err) { > + bpf_map_area_free(arena); > + goto err; > + } > mutex_init(&arena->lock); > > return &arena->map; The fix is straightforward, so Acked-by: Hou Tao <houtao1@xxxxxxxxxx>