summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLi RongQing <lirongqing@baidu.com>2026-06-01 05:56:54 -0400
committerJason Gunthorpe <jgg@nvidia.com>2026-06-05 13:41:48 -0300
commit309cacf953aa7e289ce50b3e7e4424c63103c333 (patch)
tree057f69a9108004e9b5ea81b269132eebd3abd075
parent9b2207bc5cdb955bdae34b3eec80f04979e17081 (diff)
downloadlinux-next-309cacf953aa7e289ce50b3e7e4424c63103c333.tar.gz
linux-next-309cacf953aa7e289ce50b3e7e4424c63103c333.zip
RDMA/mlx5: Fix error propagation in __mlx5_ib_add
__mlx5_ib_add() currently returns -ENOMEM on any stage initialization failure, losing the actual error code returned by the init function. This makes it impossible for callers to distinguish between different failure reasons (e.g. -EINVAL, -EIO, -EOPNOTSUPP) and leads to misleading error handling. Fix it by returning the actual error code stored in 'err'. Link: https://patch.msgid.link/r/20260601095654.2178-1-lirongqing@baidu.com Signed-off-by: Li RongQing <lirongqing@baidu.com> Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
-rw-r--r--drivers/infiniband/hw/mlx5/main.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/infiniband/hw/mlx5/main.c b/drivers/infiniband/hw/mlx5/main.c
index 12bfefc91b02..e2e8feb1b60d 100644
--- a/drivers/infiniband/hw/mlx5/main.c
+++ b/drivers/infiniband/hw/mlx5/main.c
@@ -5116,7 +5116,7 @@ err_out:
if (profile->stage[i].cleanup)
profile->stage[i].cleanup(dev);
}
- return -ENOMEM;
+ return err;
}
static const struct mlx5_ib_profile pf_profile = {