diff options
Diffstat (limited to 'drivers/net/ixgbe/ixgbe_ethtool.c')
-rw-r--r-- | drivers/net/ixgbe/ixgbe_ethtool.c | 10 |
1 files changed, 2 insertions, 8 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 | } |