Thread (5 messages) flat view 5 messages, 3 authors, 2014-02-24
STALE4549d

[PATCH net 4/5] be2net: wait longer to reap TX compls in be_close()

From: Somnath Kotur <hidden>
Date: 2014-02-24 06:52:35
Subsystem: emulex 10gbps nic be2, be3-r, lancer, skyhawk-r driver (be2net), networking drivers, the rest · Maintainers: Ajit Khaparde, Sriharsha Basavapatna, Andrew Lunn, "David S. Miller", Eric Dumazet, Jakub Kicinski, Paolo Abeni, Linus Torvalds

From: Vasundhara Volam <redacted>

be_close() currently waits for a max of 200ms to receive all pending
TX compls. This timeout value was roughly calcuated based on 10G
transmission speeds and the TX queue depth. This timeout may not be
enough when the link is operating at lower speeds or in
multi-channel/SR-IOV configs with TX-rate limiting setting.
Increase the timeout to 2000ms and also bail-out if there is
a HW-error.

Signed-off-by: Vasundhara Volam <redacted>
Signed-off-by: Sathya Perla <redacted>
Signed-off-by: Somnath Kotur <redacted>
---
 drivers/net/ethernet/emulex/benet/be_main.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/drivers/net/ethernet/emulex/benet/be_main.c b/drivers/net/ethernet/emulex/benet/be_main.c
index a9da6f9..f6a4481 100644
--- a/drivers/net/ethernet/emulex/benet/be_main.c
+++ b/drivers/net/ethernet/emulex/benet/be_main.c
@@ -1985,7 +1985,7 @@ static void be_tx_compl_clean(struct be_adapter *adapter)
 				pending_txqs--;
 		}
 
-		if (pending_txqs == 0 || ++timeo > 200)
+		if (pending_txqs == 0 || ++timeo > 2000 || be_hw_error(adapter))
 			break;
 
 		mdelay(1);
-- 
1.5.6.1
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help