diff options
Diffstat (limited to 'drivers/net/ixgbe')
-rw-r--r-- | drivers/net/ixgbe/ixgbe_ethtool.c | 10 | ||||
-rw-r--r-- | drivers/net/ixgbe/ixgbe_main.c | 15 |
2 files changed, 7 insertions, 18 deletions
diff --git a/drivers/net/ixgbe/ixgbe_ethtool.c b/drivers/net/ixgbe/ixgbe_ethtool.c index 81b769093d22..3efe5dda10af 100644 --- a/drivers/net/ixgbe/ixgbe_ethtool.c +++ b/drivers/net/ixgbe/ixgbe_ethtool.c | |||
@@ -252,16 +252,10 @@ static int ixgbe_set_tso(struct net_device *netdev, u32 data) | |||
252 | netdev->features |= NETIF_F_TSO; | 252 | netdev->features |= NETIF_F_TSO; |
253 | netdev->features |= NETIF_F_TSO6; | 253 | netdev->features |= NETIF_F_TSO6; |
254 | } else { | 254 | } else { |
255 | struct ixgbe_adapter *adapter = netdev_priv(netdev); | 255 | netif_tx_stop_all_queues(netdev); |
256 | int i; | ||
257 | netif_stop_queue(netdev); | ||
258 | for (i = 0; i < adapter->num_tx_queues; i++) | ||
259 | netif_stop_subqueue(netdev, i); | ||
260 | netdev->features &= ~NETIF_F_TSO; | 256 | netdev->features &= ~NETIF_F_TSO; |
261 | netdev->features &= ~NETIF_F_TSO6; | 257 | netdev->features &= ~NETIF_F_TSO6; |
262 | for (i = 0; i < adapter->num_tx_queues; i++) | 258 | netif_tx_start_all_queues(netdev); |
263 | netif_start_subqueue(netdev, i); | ||
264 | netif_start_queue(netdev); | ||
265 | } | 259 | } |
266 | return 0; | 260 | return 0; |
267 | } | 261 | } |
diff --git a/drivers/net/ixgbe/ixgbe_main.c b/drivers/net/ixgbe/ixgbe_main.c index e6df9233f5ef..6af8fb5c4b5f 100644 --- a/drivers/net/ixgbe/ixgbe_main.c +++ b/drivers/net/ixgbe/ixgbe_main.c | |||
@@ -2013,7 +2013,7 @@ void ixgbe_down(struct ixgbe_adapter *adapter) | |||
2013 | del_timer_sync(&adapter->watchdog_timer); | 2013 | del_timer_sync(&adapter->watchdog_timer); |
2014 | 2014 | ||
2015 | netif_carrier_off(netdev); | 2015 | netif_carrier_off(netdev); |
2016 | netif_stop_queue(netdev); | 2016 | netif_tx_stop_all_queues(netdev); |
2017 | 2017 | ||
2018 | if (!pci_channel_offline(adapter->pdev)) | 2018 | if (!pci_channel_offline(adapter->pdev)) |
2019 | ixgbe_reset(adapter); | 2019 | ixgbe_reset(adapter); |
@@ -2359,7 +2359,7 @@ try_msi: | |||
2359 | 2359 | ||
2360 | out: | 2360 | out: |
2361 | /* Notify the stack of the (possibly) reduced Tx Queue count. */ | 2361 | /* Notify the stack of the (possibly) reduced Tx Queue count. */ |
2362 | adapter->netdev->egress_subqueue_count = adapter->num_tx_queues; | 2362 | adapter->netdev->real_num_tx_queues = adapter->num_tx_queues; |
2363 | 2363 | ||
2364 | return err; | 2364 | return err; |
2365 | } | 2365 | } |
@@ -2896,7 +2896,6 @@ static void ixgbe_watchdog(unsigned long data) | |||
2896 | struct net_device *netdev = adapter->netdev; | 2896 | struct net_device *netdev = adapter->netdev; |
2897 | bool link_up; | 2897 | bool link_up; |
2898 | u32 link_speed = 0; | 2898 | u32 link_speed = 0; |
2899 | int i; | ||
2900 | 2899 | ||
2901 | adapter->hw.mac.ops.check_link(&adapter->hw, &(link_speed), &link_up); | 2900 | adapter->hw.mac.ops.check_link(&adapter->hw, &(link_speed), &link_up); |
2902 | 2901 | ||
@@ -2917,9 +2916,7 @@ static void ixgbe_watchdog(unsigned long data) | |||
2917 | (FLOW_TX ? "TX" : "None")))); | 2916 | (FLOW_TX ? "TX" : "None")))); |
2918 | 2917 | ||
2919 | netif_carrier_on(netdev); | 2918 | netif_carrier_on(netdev); |
2920 | netif_wake_queue(netdev); | 2919 | netif_tx_wake_all_queues(netdev); |
2921 | for (i = 0; i < adapter->num_tx_queues; i++) | ||
2922 | netif_wake_subqueue(netdev, i); | ||
2923 | } else { | 2920 | } else { |
2924 | /* Force detection of hung controller */ | 2921 | /* Force detection of hung controller */ |
2925 | adapter->detect_tx_hung = true; | 2922 | adapter->detect_tx_hung = true; |
@@ -2928,7 +2925,7 @@ static void ixgbe_watchdog(unsigned long data) | |||
2928 | if (netif_carrier_ok(netdev)) { | 2925 | if (netif_carrier_ok(netdev)) { |
2929 | DPRINTK(LINK, INFO, "NIC Link is Down\n"); | 2926 | DPRINTK(LINK, INFO, "NIC Link is Down\n"); |
2930 | netif_carrier_off(netdev); | 2927 | netif_carrier_off(netdev); |
2931 | netif_stop_queue(netdev); | 2928 | netif_tx_stop_all_queues(netdev); |
2932 | } | 2929 | } |
2933 | } | 2930 | } |
2934 | 2931 | ||
@@ -3631,9 +3628,7 @@ static int __devinit ixgbe_probe(struct pci_dev *pdev, | |||
3631 | ixgbe_start_hw(hw); | 3628 | ixgbe_start_hw(hw); |
3632 | 3629 | ||
3633 | netif_carrier_off(netdev); | 3630 | netif_carrier_off(netdev); |
3634 | netif_stop_queue(netdev); | 3631 | netif_tx_stop_all_queues(netdev); |
3635 | for (i = 0; i < adapter->num_tx_queues; i++) | ||
3636 | netif_stop_subqueue(netdev, i); | ||
3637 | 3632 | ||
3638 | ixgbe_napi_add_all(adapter); | 3633 | ixgbe_napi_add_all(adapter); |
3639 | 3634 | ||