RDMA/nes: Increase rexmit timeout interval

Under heavy load with large cluster testing, it may take longer to
receive a response to MPA requests. Change the driver to wait longer
after each rexmit to max time value.

Signed-off-by: Faisal Latif <faisal.latif@intel.com>
Signed-off-by: Roland Dreier <rolandd@cisco.com>

authored by Faisal Latif and committed by Roland Dreier 4e9c3900 c11470f9

+6 -1
+5 -1
drivers/infiniband/hw/nes/nes_cm.c
··· 541 struct list_head *list_node; 542 struct nes_cm_core *cm_core = g_cm_core; 543 u32 settimer = 0; 544 int ret = NETDEV_TX_OK; 545 546 struct list_head timer_list; ··· 646 send_entry->retrycount); 647 if (send_entry->send_retrans) { 648 send_entry->retranscount--; 649 send_entry->timetosend = jiffies + 650 - NES_RETRY_TIMEOUT; 651 if (nexttimeout > send_entry->timetosend || 652 !settimer) { 653 nexttimeout = send_entry->timetosend;
··· 541 struct list_head *list_node; 542 struct nes_cm_core *cm_core = g_cm_core; 543 u32 settimer = 0; 544 + unsigned long timetosend; 545 int ret = NETDEV_TX_OK; 546 547 struct list_head timer_list; ··· 645 send_entry->retrycount); 646 if (send_entry->send_retrans) { 647 send_entry->retranscount--; 648 + timetosend = (NES_RETRY_TIMEOUT << 649 + (NES_DEFAULT_RETRANS - send_entry->retranscount)); 650 + 651 send_entry->timetosend = jiffies + 652 + min(timetosend, NES_MAX_TIMEOUT); 653 if (nexttimeout > send_entry->timetosend || 654 !settimer) { 655 nexttimeout = send_entry->timetosend;
+1
drivers/infiniband/hw/nes/nes_cm.h
··· 149 #endif 150 #define NES_SHORT_TIME (10) 151 #define NES_LONG_TIME (2000*HZ/1000) 152 153 #define NES_CM_HASHTABLE_SIZE 1024 154 #define NES_CM_TCP_TIMER_INTERVAL 3000
··· 149 #endif 150 #define NES_SHORT_TIME (10) 151 #define NES_LONG_TIME (2000*HZ/1000) 152 + #define NES_MAX_TIMEOUT ((unsigned long) (12*HZ)) 153 154 #define NES_CM_HASHTABLE_SIZE 1024 155 #define NES_CM_TCP_TIMER_INTERVAL 3000