summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMitch Williams2015-01-29 08:17:18 +0100
committerJeff Kirsher2015-02-24 02:13:19 +0100
commit748c434bfa956e3ac64793d14d3bdbe7befcb901 (patch)
tree0a66190fcf3c2ef6e74f21ea4410fb8ffec8a599
parenti40e: Fix i40e_ndo_set_vf_spoofchk (diff)
downloadkernel-qcow2-linux-748c434bfa956e3ac64793d14d3bdbe7befcb901.tar.gz
kernel-qcow2-linux-748c434bfa956e3ac64793d14d3bdbe7befcb901.tar.xz
kernel-qcow2-linux-748c434bfa956e3ac64793d14d3bdbe7befcb901.zip
i40evf: disable NAPI polling sooner
When closing the interface, disable NAPI polling before any other activities. This fixes an occasional panic during close caused by the driver trying to delete and clean rings at the same time. Change-ID: Ib4d427b13d310258ea85b248d535da70ecf0c1e9 Signed-off-by: Mitch Williams <mitch.a.williams@intel.com> Tested-by: Jim Young <james.m.young@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
-rw-r--r--drivers/net/ethernet/intel/i40evf/i40evf_main.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/drivers/net/ethernet/intel/i40evf/i40evf_main.c b/drivers/net/ethernet/intel/i40evf/i40evf_main.c
index b1ca9ddf50bc..eb1ac2227681 100644
--- a/drivers/net/ethernet/intel/i40evf/i40evf_main.c
+++ b/drivers/net/ethernet/intel/i40evf/i40evf_main.c
@@ -959,6 +959,7 @@ void i40evf_down(struct i40evf_adapter *adapter)
usleep_range(500, 1000);
i40evf_irq_disable(adapter);
+ i40evf_napi_disable_all(adapter);
/* remove all MAC filters */
list_for_each_entry(f, &adapter->mac_filter_list, list) {
@@ -985,8 +986,6 @@ void i40evf_down(struct i40evf_adapter *adapter)
netif_tx_stop_all_queues(netdev);
- i40evf_napi_disable_all(adapter);
-
msleep(20);
netif_carrier_off(netdev);