diff mbox

[rdma-core,1/4] libqedr: ignore inline flag in read verbs

Message ID 1481465891-14789-2-git-send-email-Ram.Amrani@Cavium.com (mailing list archive)
State Accepted
Headers show

Commit Message

Amrani, Ram Dec. 11, 2016, 2:18 p.m. UTC
In the current implementation a read verb with IBV_SEND_INLINE may be
illegally configured.
In this fix we ignore the inline bit in the case of a read verb.

Signed-off-by: Ram Amrani <Ram.Amrani@cavium.com>
---
 providers/qedr/qelr_verbs.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)
diff mbox

Patch

diff --git a/providers/qedr/qelr_verbs.c b/providers/qedr/qelr_verbs.c
index d2b34ee..fae823c 100644
--- a/providers/qedr/qelr_verbs.c
+++ b/providers/qedr/qelr_verbs.c
@@ -1027,7 +1027,9 @@  static uint32_t qelr_prepare_sq_rdma_data(struct qelr_qp *qp,
 	rwqe2->r_key = htole32(wr->wr.rdma.rkey);
 	TYPEPTR_ADDR_SET(rwqe2, remote_va, wr->wr.rdma.remote_addr);
 
-	if (wr->send_flags & IBV_SEND_INLINE) {
+	if (wr->send_flags & IBV_SEND_INLINE &&
+	    (wr->opcode == IBV_WR_RDMA_WRITE_WITH_IMM ||
+	     wr->opcode == IBV_WR_RDMA_WRITE)) {
 		uint8_t flags = 0;
 
 		SET_FIELD2(flags, RDMA_SQ_RDMA_WQE_1ST_INLINE_FLG, 1);