Commit 087f9c3f authored by Yongzhi Liu's avatar Yongzhi Liu Committed by Jason Gunthorpe

RDMA/mlx5: Fix memory leak in error flow for subscribe event routine

In case the second xa_insert() fails, the obj_event is not released.  Fix
the error unwind flow to free that memory to avoid a memory leak.

Fixes: 75973853 ("IB/mlx5: Enable subscription for device events over DEVX")
Link: https://lore.kernel.org/r/1647018361-18266-1-git-send-email-lyz_cs@pku.edu.cnSigned-off-by: default avatarYongzhi Liu <lyz_cs@pku.edu.cn>
Signed-off-by: default avatarJason Gunthorpe <jgg@nvidia.com>
parent 7922d3de
...@@ -1886,8 +1886,10 @@ subscribe_event_xa_alloc(struct mlx5_devx_event_table *devx_event_table, ...@@ -1886,8 +1886,10 @@ subscribe_event_xa_alloc(struct mlx5_devx_event_table *devx_event_table,
key_level2, key_level2,
obj_event, obj_event,
GFP_KERNEL); GFP_KERNEL);
if (err) if (err) {
kfree(obj_event);
return err; return err;
}
INIT_LIST_HEAD(&obj_event->obj_sub_list); INIT_LIST_HEAD(&obj_event->obj_sub_list);
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment