diff mbox

[rdma-core,1/6] libhns: Intercept illegal RDMA operation when use inline data

Message ID 1526009610-72089-2-git-send-email-oulijun@huawei.com (mailing list archive)
State Accepted
Delegated to: Jason Gunthorpe
Headers show

Commit Message

Lijun Ou May 11, 2018, 3:33 a.m. UTC
RDMA read operation is not supported inline data. If user cofigures
issue a RDMA read and use inline data, it will happen a hardware
error.

Signed-off-by: Lijun Ou <oulijun@huawei.com>
---
 providers/hns/hns_roce_u_hw_v2.c | 7 +++++++
 1 file changed, 7 insertions(+)
diff mbox

Patch

diff --git a/providers/hns/hns_roce_u_hw_v2.c b/providers/hns/hns_roce_u_hw_v2.c
index 0889d0b..747de04 100644
--- a/providers/hns/hns_roce_u_hw_v2.c
+++ b/providers/hns/hns_roce_u_hw_v2.c
@@ -698,6 +698,13 @@  static int hns_roce_u_v2_post_send(struct ibv_qp *ibvqp, struct ibv_send_wr *wr,
 				return ret;
 			}
 
+			if (wr->opcode == IBV_WR_RDMA_READ) {
+				ret = EINVAL;
+				*bad_wr = wr;
+				printf("Not supported inline data!\n");
+				goto out;
+			}
+
 			for (i = 0; i < wr->num_sge; i++) {
 				memcpy(wqe,
 				     ((void *) (uintptr_t) wr->sg_list[i].addr),