diff options
-rw-r--r-- | drivers/infiniband/hw/cxgb4/qp.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/drivers/infiniband/hw/cxgb4/qp.c b/drivers/infiniband/hw/cxgb4/qp.c index 9fb52fa75e2a..a41881b15e6d 100644 --- a/drivers/infiniband/hw/cxgb4/qp.c +++ b/drivers/infiniband/hw/cxgb4/qp.c | |||
@@ -572,9 +572,13 @@ int c4iw_post_send(struct ib_qp *ibqp, struct ib_send_wr *wr, | |||
572 | err = build_rdma_write(wqe, wr, &len16); | 572 | err = build_rdma_write(wqe, wr, &len16); |
573 | break; | 573 | break; |
574 | case IB_WR_RDMA_READ: | 574 | case IB_WR_RDMA_READ: |
575 | case IB_WR_RDMA_READ_WITH_INV: | ||
575 | fw_opcode = FW_RI_RDMA_READ_WR; | 576 | fw_opcode = FW_RI_RDMA_READ_WR; |
576 | swsqe->opcode = FW_RI_READ_REQ; | 577 | swsqe->opcode = FW_RI_READ_REQ; |
577 | fw_flags = 0; | 578 | if (wr->opcode == IB_WR_RDMA_READ_WITH_INV) |
579 | fw_flags |= FW_RI_RDMA_READ_INVALIDATE; | ||
580 | else | ||
581 | fw_flags = 0; | ||
578 | err = build_rdma_read(wqe, wr, &len16); | 582 | err = build_rdma_read(wqe, wr, &len16); |
579 | if (err) | 583 | if (err) |
580 | break; | 584 | break; |