Skip to contentSkip to conversation

RDMA/cxgb3: Turn off rx coalescing for iwarp connections.

PATCH In review Steve Wise 3 participants 4 messages Sep 19, 2010 – Sep 20, 2010 4 messages not in the archive InfiniBand

lore
Share & tools
lore

Steve Wise

author
#0 lore raw

PATCH 1/1 RDMA/cxgb3: Turn off rx coalescing for iwarp connections.

The HW by default has RX coalescing on. For iwarp connections, this was causing a 100ms delay in connection establishement due to the ingress MPA Start message being stalled in HW. So explicitly turn rx coalescing off when setting up iwarp connections.

This was causing very bad performance for NP64 gather operations using OpenMPI due to the way it sets up connections on larger jobs.

---

 drivers/infiniband/hw/cxgb3/iwch_cm.c |    6 ++++--
 1 files changed, 4 insertions(+), 2 deletions(-)
drivers/infiniband/hw/cxgb3/iwch_cm.c +4 -2
index d88077a..13c8887 100644
@@ -463,7 +463,8 @@ static int send_connect(struct iwch_ep *ep)
 	    V_MSS_IDX(mtu_idx) |
 	    V_L2T_IDX(ep->l2t->idx) | V_TX_CHANNEL(ep->l2t->smt_idx);
 	opt0l = V_TOS((ep->tos >> 2) & M_TOS) | V_RCV_BUFSIZ(rcv_win>>10);
-	opt2 = V_FLAVORS_VALID(1) | V_CONG_CONTROL_FLAVOR(cong_flavor);
+	opt2 = F_RX_COALESCE_VALID | V_RX_COALESCE(0) | V_FLAVORS_VALID(1) |
+	       V_CONG_CONTROL_FLAVOR(cong_flavor);
 	skb->priority = CPL_PRIORITY_SETUP;
 	set_arp_failure_handler(skb, act_open_req_arp_failure);
 
@@ -1280,7 +1281,8 @@ static void accept_cr(struct iwch_ep *ep, __be32 peer_ip, struct sk_buff *skb)
 	    V_MSS_IDX(mtu_idx) |
 	    V_L2T_IDX(ep->l2t->idx) | V_TX_CHANNEL(ep->l2t->smt_idx);
 	opt0l = V_TOS((ep->tos >> 2) & M_TOS) | V_RCV_BUFSIZ(rcv_win>>10);
-	opt2 = V_FLAVORS_VALID(1) | V_CONG_CONTROL_FLAVOR(cong_flavor);
+	opt2 = F_RX_COALESCE_VALID | V_RX_COALESCE(0) | V_FLAVORS_VALID(1) |
+	       V_CONG_CONTROL_FLAVOR(cong_flavor);
 
 	rpl = cplhdr(skb);
 	rpl->wr.wr_hi = htonl(V_WR_OP(FW_WROPCODE_FORWARD));

--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html

A message that is not in the archive (sent off-list or not yet received): 20100919003821.11904.91366.stgit-T4OLL4TyM9aNDNWfRnPdfg@public.gmane.org

#2 lore raw
Quoted 10 lines · Steve Wise

The HW by default has RX coalescing on. For iwarp connections, this was causing a 100ms delay in connection establishement due to the ingress MPA Start message being stalled in HW. So explicitly turn rx coalescing off when setting up iwarp connections.

This was causing very bad performance for NP64 gather operations using OpenMPI due to the way it sets up connections on larger jobs.

---

Please read Documentation/stable_kernel_rules.txt for how to get a patch into the stable tree. Hint, you are close, but this isn't going to work this way...

thanks,

greg k-h
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html

A message that is not in the archive (sent off-list or not yet received): [email protected]

A message that is not in the archive (sent off-list or not yet received): [email protected]

#5 lore raw
Quoted 2 lines

What am I doing wrong? I think it meets the criteria. And I CC'ed [email protected] as suggested below.

I was a bit confusing in my email. The cc goes in the commit description rather than the mail with the patch, ie I put

RDMA/cxgb3: blah blah

Blah blah blah.

in the commit, and Greg gets it automatically when it hits Linus's tree. You can put the Cc: before your s-o-b line too and I'll leave it there.

- R.
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html

A message that is not in the archive (sent off-list or not yet received): [email protected]

author
#7 lore raw
Quoted 10 lines · Roland Dreier
Quoted 2 lines

What am I doing wrong? I think it meets the criteria. And I CC'ed [email protected] as suggested below.

I was a bit confusing in my email. The cc goes in the commit description rather than the mail with the patch, ie I put

RDMA/cxgb3: blah blah

Blah blah blah.

Quoted 8 lines

in the commit, and Greg gets it automatically when it hits Linus's tree. You can put the Cc: before your s-o-b line too and I'll leave it there.

- R.

Ah, I get it. Thanks for the clarification!

Stevo
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html