aboutsummaryrefslogtreecommitdiff
path: root/drivers/net/ethernet/intel/igbvf/netdev.c
diff options
context:
space:
mode:
authorDavid S. Miller <davem@davemloft.net>2015-03-20 21:40:47 -0400
committerDavid S. Miller <davem@davemloft.net>2015-03-20 21:40:47 -0400
commitdf814d96edcb8b224ead0f64b380be10ce94f900 (patch)
tree03c2e0954a7f83dc512b894bc7365582984b1b3d /drivers/net/ethernet/intel/igbvf/netdev.c
parentc6f15070e70c2bdd769317a0615f5c5e8869bfaa (diff)
parent784401bfc0b22b5521492047884e8d834de4dfab (diff)
Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/next-queue
Jeff Kirsher says: ==================== Intel Wired LAN Driver Updates 2015-03-20 This series contains updates to ixgb, e1000e, igb and igbvf. Eliezer and Todd provide patches to fix a potential issue found during code inspection. When bringing down an interface netif_carrier_off() should be one of the first things we do, since this will prevent the stack from queueing more packets to this interface. Yanir provides a fix for e1000e that was found in validating i219, where the call to e1000e_write_protect_nvm_ich8lan() is no longer supported in newer hardware. Access to these registers causes a system freeze in early steppings and is ignored in later steppings. ==================== Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/intel/igbvf/netdev.c')
-rw-r--r--drivers/net/ethernet/intel/igbvf/netdev.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/drivers/net/ethernet/intel/igbvf/netdev.c b/drivers/net/ethernet/intel/igbvf/netdev.c
index c17ea4b8f84d..95af14e139d7 100644
--- a/drivers/net/ethernet/intel/igbvf/netdev.c
+++ b/drivers/net/ethernet/intel/igbvf/netdev.c
@@ -1519,6 +1519,7 @@ void igbvf_down(struct igbvf_adapter *adapter)
rxdctl = er32(RXDCTL(0));
ew32(RXDCTL(0), rxdctl & ~E1000_RXDCTL_QUEUE_ENABLE);
+ netif_carrier_off(netdev);
netif_stop_queue(netdev);
/* disable transmits in the hardware */
@@ -1535,8 +1536,6 @@ void igbvf_down(struct igbvf_adapter *adapter)
del_timer_sync(&adapter->watchdog_timer);
- netif_carrier_off(netdev);
-
/* record the stats before reset*/
igbvf_update_stats(adapter);