OSDN Git Service

i40e: avoid disable of interrupt when changing ITR
authorJesse Brandeburg <jesse.brandeburg@intel.com>
Fri, 17 Oct 2014 03:14:46 +0000 (03:14 +0000)
committerJeff Kirsher <jeffrey.t.kirsher@intel.com>
Mon, 3 Nov 2014 10:13:57 +0000 (02:13 -0800)
The call to irq_dynamic_disable was turning off the interrupt completely
when trying to set ITR to 0 (for lowest moderation).  Just remove the
call as setting the values to 0 later in this function will suffice.

Change-ID: I47caf1ecbe65653cf63ec833db93094cd83fd84d
Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: Patrick Lu <patrick.lu@intel.com>
Tested-By: Jim Young <jamesx.m.young@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
drivers/net/ethernet/intel/i40e/i40e_ethtool.c

index 12adc08..b6e745f 100644 (file)
@@ -1574,7 +1574,6 @@ static int i40e_set_coalesce(struct net_device *netdev,
                vsi->rx_itr_setting = ec->rx_coalesce_usecs;
        } else if (ec->rx_coalesce_usecs == 0) {
                vsi->rx_itr_setting = ec->rx_coalesce_usecs;
-               i40e_irq_dynamic_disable(vsi, vector);
                if (ec->use_adaptive_rx_coalesce)
                        netif_info(pf, drv, netdev,
                                   "Rx-secs=0, need to disable adaptive-Rx for a complete disable\n");
@@ -1589,7 +1588,6 @@ static int i40e_set_coalesce(struct net_device *netdev,
                vsi->tx_itr_setting = ec->tx_coalesce_usecs;
        } else if (ec->tx_coalesce_usecs == 0) {
                vsi->tx_itr_setting = ec->tx_coalesce_usecs;
-               i40e_irq_dynamic_disable(vsi, vector);
                if (ec->use_adaptive_tx_coalesce)
                        netif_info(pf, drv, netdev,
                                   "Tx-secs=0, need to disable adaptive-Tx for a complete disable\n");