Commit bf4ef399 authored by Junxian Huang's avatar Junxian Huang Committed by Juan Zhou
Browse files

RDMA/hns: Fix inappropriate err code for unsupported operations

mainline inclusion
from mainline-v6.8-rc1
commit f45b83ad39f8033e717b1eee57e81811113d5a84
category: bugfix
bugzilla: https://gitee.com/openeuler/kernel/issues/I90X3R
CVE: NA

Reference: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=f45b83ad39f8033e717b1eee57e81811113d5a84



----------------------------------------------------------------------

EOPNOTSUPP is more situable than EINVAL for allocating XRCD while XRC
is not supported and unsupported resizing SRQ.

Fixes: 32548870 ("RDMA/hns: Add support for XRC on HIP09")
Fixes: 221109e6 ("RDMA/hns: Add interception for resizing SRQs")
Signed-off-by: default avatarJunxian Huang <huangjunxian6@hisilicon.com>
Link: https://lore.kernel.org/r/20231114123449.1106162-2-huangjunxian6@hisilicon.com


Signed-off-by: default avatarLeon Romanovsky <leon@kernel.org>
Signed-off-by: default avatarJuan Zhou <zhoujuan51@h-partners.com>
parent 0570b06b
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -5671,7 +5671,7 @@ static int hns_roce_v2_modify_srq(struct ib_srq *ibsrq,

	/* Resizing SRQs is not supported yet */
	if (srq_attr_mask & IB_SRQ_MAX_WR)
		return -EINVAL;
		return -EOPNOTSUPP;

	if (srq_attr_mask & IB_SRQ_LIMIT) {
		if (srq_attr->srq_limit > srq->wqe_cnt)
+1 −1
Original line number Diff line number Diff line
@@ -150,7 +150,7 @@ int hns_roce_alloc_xrcd(struct ib_xrcd *ib_xrcd, struct ib_udata *udata)
	int ret;

	if (!(hr_dev->caps.flags & HNS_ROCE_CAP_FLAG_XRC))
		return -EINVAL;
		return -EOPNOTSUPP;

	ret = hns_roce_xrcd_alloc(hr_dev, &xrcd->xrcdn);
	if (ret)