linux/drivers/net/ethernet/emulex/benet
Vasundhara Volam 1a3d0717f6 be2net: Fix to reap TX compls till HW doesn't respond for some time
be_close() currently waits for a max of 200ms to receive all pending
TX compls. This timeout value was roughly calculated 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.

It is hard to calculate a "proper timeout value" that works in all
configurations.  This patch solves this problem by continuing to reap
TX completions till the HW is completely silent for a period of 10ms or
a HW error is detected.

v2: implements the new scheme (as suggested by David Laight) instead of
just waiting longer than 200ms for reaping all completions.

Signed-off-by: Vasundhara Volam <vasundhara.volam@emulex.com>
Signed-off-by: Sathya Perla <sathya.perla@emulex.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2014-04-14 13:41:37 -04:00
..
be_cmds.c be2net: add FW cmds needed for VxLAN offloads 2014-03-28 14:24:54 -04:00
be_cmds.h be2net: add FW cmds needed for VxLAN offloads 2014-03-28 14:24:54 -04:00
be_ethtool.c net: Replace u64_stats_fetch_begin_bh to u64_stats_fetch_begin_irq 2014-03-14 22:41:36 -04:00
be_hw.h be2net: csum, tso and rss steering offload support for VxLAN 2014-03-28 14:24:54 -04:00
be_main.c be2net: Fix to reap TX compls till HW doesn't respond for some time 2014-04-14 13:41:37 -04:00
be_roce.c Main batch of InfiniBand/RDMA changes for 3.15: 2014-04-03 16:57:19 -07:00
be_roce.h Main batch of InfiniBand/RDMA changes for 3.15: 2014-04-03 16:57:19 -07:00
be.h be2net: csum, tso and rss steering offload support for VxLAN 2014-03-28 14:24:54 -04:00
Kconfig be2net: fix build dependency on VxLAN 2014-04-01 16:25:51 -04:00
Makefile be2net: Add functionality to support RoCE driver 2012-05-08 11:17:47 -07:00