summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKumar Sanghvi <kumaras@chelsio.com>2011-11-28 16:39:15 (GMT)
committerRoland Dreier <roland@purestorage.com>2011-11-28 19:58:07 (GMT)
commit01b225e18fcb540c5d615ca79ef832473451f118 (patch)
tree6516f14b03d731700a6ed0baa6f0ca935fdcdd13
parentc34c97ad8c7c3cdacab2327235c2df4454ff1a06 (diff)
downloadlinux-fsl-qoriq-01b225e18fcb540c5d615ca79ef832473451f118.tar.xz
RDMA/cxgb4: Fix retry with MPAv1 logic for MPAv2
Fix logic so that we don't retry with MPAv1 once we have done that already. Otherwise, we end up retrying with MPAv1 even when its not needed on getting peer aborts - and this could lead to kernel panic. Signed-off-by: Kumar Sanghvi <kumaras@chelsio.com> Signed-off-by: Roland Dreier <roland@purestorage.com>
-rw-r--r--drivers/infiniband/hw/cxgb4/cm.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/infiniband/hw/cxgb4/cm.c b/drivers/infiniband/hw/cxgb4/cm.c
index b36cdac..760b2fe 100644
--- a/drivers/infiniband/hw/cxgb4/cm.c
+++ b/drivers/infiniband/hw/cxgb4/cm.c
@@ -542,8 +542,10 @@ static void send_mpa_req(struct c4iw_ep *ep, struct sk_buff *skb,
(mpa_rev_to_use == 2 ? MPA_ENHANCED_RDMA_CONN : 0);
mpa->private_data_size = htons(ep->plen);
mpa->revision = mpa_rev_to_use;
- if (mpa_rev_to_use == 1)
+ if (mpa_rev_to_use == 1) {
ep->tried_with_mpa_v1 = 1;
+ ep->retry_with_mpa_v1 = 0;
+ }
if (mpa_rev_to_use == 2) {
mpa->private_data_size +=