summaryrefslogtreecommitdiff
path: root/drivers/infiniband/hw/mlx5/mr.c
diff options
context:
space:
mode:
authorLi Zhijian <lizhijian@cn.fujitsu.com>2021-12-28 04:44:06 +0300
committerJason Gunthorpe <jgg@nvidia.com>2022-01-04 17:29:34 +0300
commit8ff5f5d9d8cfce6a1e368a6daa7123be133a6c35 (patch)
tree7393e9589e14b2601094969804e503574860ab7b /drivers/infiniband/hw/mlx5/mr.c
parentc9e6606c7fe92b50a02ce51dda82586ebdf99b48 (diff)
downloadlinux-8ff5f5d9d8cfce6a1e368a6daa7123be133a6c35.tar.xz
RDMA/rxe: Prevent double freeing rxe_map_set()
The same rxe_map_set could be freed twice: rxe_reg_user_mr() -> rxe_mr_init_user() -> rxe_mr_free_map_set() # 1st -> rxe_drop_ref() ... -> rxe_mr_cleanup() -> rxe_mr_free_map_set() # 2nd Follow normal convection and put resource cleanup either in the error unwind of the allocator, or the overall free function. Leave the object unchanged with a NULL cur_map_set on failure and remove the unncessary free in rxe_mr_init_user(). Link: https://lore.kernel.org/r/20211228014406.1033444-1-lizhijian@cn.fujitsu.com Signed-off-by: Li Zhijian <lizhijian@cn.fujitsu.com> Acked-by: Zhu Yanjun <zyjzyj2000@gmail.com> Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
Diffstat (limited to 'drivers/infiniband/hw/mlx5/mr.c')
0 files changed, 0 insertions, 0 deletions