iw_cxgb4: fix misuse of ep->ord for minimum ird calculation
authorHariprasad S <hariprasad@chelsio.com>
Tue, 8 Sep 2015 04:26:59 +0000 (09:56 +0530)
committerDoug Ledford <dledford@redhat.com>
Wed, 21 Oct 2015 21:16:10 +0000 (17:16 -0400)
When calculating the minimum ird in c4iw_accept_cr(), we need to always
have a value of at least 1 if the RTR message is a 0B read.  The code
was
incorrectly using ep->ord for this logic which was incorrectly adjusting
the ird and causing incorrect ord/ird negotiation when using MPAv2 to
negotiate these values.

Signed-off-by: Hariprasad Shenai <hariprasad@chelsio.com>
Signed-off-by: Doug Ledford <dledford@redhat.com>
drivers/infiniband/hw/cxgb4/cm.c

index a6aae913850c72deab08c80511d8ceefb9a53f86..fa3ee5971f35cef7175743257e67fd30a0352298 100644 (file)
@@ -2933,7 +2933,7 @@ int c4iw_accept_cr(struct iw_cm_id *cm_id, struct iw_cm_conn_param *conn_param)
        } else {
                if (peer2peer &&
                    (ep->mpa_attr.p2p_type != FW_RI_INIT_P2PTYPE_DISABLED) &&
-                   (p2p_type == FW_RI_INIT_P2PTYPE_READ_REQ) && ep->ord == 0)
+                   (p2p_type == FW_RI_INIT_P2PTYPE_READ_REQ) && ep->ird == 0)
                        ep->ird = 1;
        }