Răsfoiți Sursa

RDMA/hns: Intercept illegal RDMA operation when use inline data

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>
Signed-off-by: Doug Ledford <dledford@redhat.com>
oulijun 7 ani în urmă
părinte
comite
328d405b3d
1 a modificat fișierele cu 5 adăugiri și 0 ștergeri
  1. 5 0
      drivers/infiniband/hw/hns/hns_roce_hw_v2.c

+ 5 - 0
drivers/infiniband/hw/hns/hns_roce_hw_v2.c

@@ -71,6 +71,11 @@ static int set_rwqe_data_seg(struct ib_qp *ibqp, struct ib_send_wr *wr,
 			return -EINVAL;
 		}
 
+		if (wr->opcode == IB_WR_RDMA_READ) {
+			dev_err(hr_dev->dev, "Not support inline data!\n");
+			return -EINVAL;
+		}
+
 		for (i = 0; i < wr->num_sge; i++) {
 			memcpy(wqe, ((void *)wr->sg_list[i].addr),
 			       wr->sg_list[i].length);