summaryrefslogtreecommitdiffstats
path: root/drivers/net/ethernet/cisco/enic/enic.h
diff options
context:
space:
mode:
authorGovindarajulu Varadarajan <_govind@gmx.com>2015-10-01 14:18:47 +0530
committerDavid S. Miller <davem@davemloft.net>2015-10-05 03:51:35 -0700
commit937317c7c1097aa878a5000e3aab616eb5c590c0 (patch)
tree8360a5079b034204940f3adc686f8a7b543ef34b /drivers/net/ethernet/cisco/enic/enic.h
parentcc809237e1f215141165f221ad729803d88bcbbe (diff)
downloadop-kernel-dev-937317c7c1097aa878a5000e3aab616eb5c590c0.zip
op-kernel-dev-937317c7c1097aa878a5000e3aab616eb5c590c0.tar.gz
enic: do hang reset only in case of tx timeout
The current code invokes hang reset in case of error interrupt. We should hang reset only in case of tx timeout. This because of the way hang reset is implemented in firmware. Hang reset takes more firmware resources than soft reset. Adaptor does not generate error interrupt in case of tx timeout. Hang reset only in case of tx timeout, in .ndo_tx_timeout. Do soft reset otherwise. Introduce deferred work, enic_tx_hang_reset, to do hang reset. Signed-off-by: Govindarajulu Varadarajan <_govind@gmx.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/cisco/enic/enic.h')
-rw-r--r--drivers/net/ethernet/cisco/enic/enic.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/net/ethernet/cisco/enic/enic.h b/drivers/net/ethernet/cisco/enic/enic.h
index 8b53f7d..6401ba99 100644
--- a/drivers/net/ethernet/cisco/enic/enic.h
+++ b/drivers/net/ethernet/cisco/enic/enic.h
@@ -143,6 +143,7 @@ struct enic {
struct vnic_dev *vdev;
struct timer_list notify_timer;
struct work_struct reset;
+ struct work_struct tx_hang_reset;
struct work_struct change_mtu_work;
struct msix_entry msix_entry[ENIC_INTR_MAX];
struct enic_msix_entry msix[ENIC_INTR_MAX];
OpenPOWER on IntegriCloud