summaryrefslogtreecommitdiff
path: root/drivers
diff options
context:
space:
mode:
authorJunxian Huang <huangjunxian6@hisilicon.com>2026-01-04 09:40:55 +0300
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2026-02-27 02:01:14 +0300
commit77e63ae3ad2d84da2cad9a0500233fdb63f6a1cf (patch)
tree99d6d3e3183faade43d6e86281d2cadcf5c0ec61 /drivers
parentc5ef9a1bcf5b597695d9c2e6ac452e9f89521862 (diff)
downloadlinux-77e63ae3ad2d84da2cad9a0500233fdb63f6a1cf.tar.xz
RDMA/hns: Return actual error code instead of fixed EINVAL
[ Upstream commit 8cda8acbb1f8c6c0fec45b7166bb558b5af59da8 ] query_cqc() and query_mpt() may return various error codes in different cases. Return actual error code instead of fixed EINVAL. Fixes: f2b070f36d1b ("RDMA/hns: Support CQ's restrack raw ops for hns driver") Fixes: 3d67e7e236ad ("RDMA/hns: Support MR's restrack raw ops for hns driver") Signed-off-by: Junxian Huang <huangjunxian6@hisilicon.com> Link: https://patch.msgid.link/20260104064057.1582216-3-huangjunxian6@hisilicon.com Signed-off-by: Leon Romanovsky <leon@kernel.org> Signed-off-by: Sasha Levin <sashal@kernel.org>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/infiniband/hw/hns/hns_roce_restrack.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/infiniband/hw/hns/hns_roce_restrack.c b/drivers/infiniband/hw/hns/hns_roce_restrack.c
index 230187dda6a0..085791cc617c 100644
--- a/drivers/infiniband/hw/hns/hns_roce_restrack.c
+++ b/drivers/infiniband/hw/hns/hns_roce_restrack.c
@@ -51,7 +51,7 @@ int hns_roce_fill_res_cq_entry_raw(struct sk_buff *msg, struct ib_cq *ib_cq)
ret = hr_dev->hw->query_cqc(hr_dev, hr_cq->cqn, &context);
if (ret)
- return -EINVAL;
+ return ret;
ret = nla_put(msg, RDMA_NLDEV_ATTR_RES_RAW, sizeof(context), &context);
@@ -177,7 +177,7 @@ int hns_roce_fill_res_mr_entry_raw(struct sk_buff *msg, struct ib_mr *ib_mr)
ret = hr_dev->hw->query_mpt(hr_dev, hr_mr->key, &context);
if (ret)
- return -EINVAL;
+ return ret;
ret = nla_put(msg, RDMA_NLDEV_ATTR_RES_RAW, sizeof(context), &context);