RDMA/cma: Fix error flow in default_roce_mode_store
PATCH 1/1 RDMA/cma: Fix error flow in default_roce_mode_store
From: Neta Ostrovsky <[email protected]>
In default_roce_mode_store(), we took a reference to cma_dev, but didn't return it in error flow. Fix it by calling to cma_dev_put in such flow.
Fixes 1c15b4f2a42f ("RDMA/core: Modify enum ib_gid_type and enum rdma_network_type")
Signed-off-by Neta Ostrovsky <[email protected]>
Signed-off-by Leon Romanovsky <[email protected]>
--- drivers/infiniband/core/cma_configfs.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-)
drivers/infiniband/core/cma_configfs.c +3 -1
@@ -131,8 +131,10 @@ static ssize_t default_roce_mode_store(struct config_item *item,return ret; gid_type =ib_cache_gid_parse_type_str (buf); -if (gid_type <0 ) +if (gid_type <0 ) { +cma_configfs_params_put (cma_dev);return -EINVAL ; + } ret =cma_set_default_gid_type (cma_dev, group->port_num, gid_type);
Signature · 1 line
2.29.2
Quoted 6 lines · Leon Romanovsky
From: Neta Ostrovsky <[email protected]>
In
default_roce_mode_store(), we took a reference tocma_dev, but didn't return it in error flow. Fix it by calling tocma_dev_putin such flow.
Quoted 6 lines
Fixes 1c15b4f2a42f ("RDMA/core: Modify enum ib_gid_type and enum rdma_network_type")Signed-off-by Neta Ostrovsky <[email protected]>Signed-off-by Leon Romanovsky <[email protected]>--- drivers/infiniband/core/cma_configfs.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-)
Applied to for-rc
Thanks,
Jason