Commit 35551c47 authored by Jeff Kirsher's avatar Jeff Kirsher

ixgbe: remove tie between NAPI work limits and interrupt moderation

As noted by Ben Hutchings and David Miller, work limits for NAPI
should not be tied to interrupt moderation parameters.  This
should be handled by NAPI, possibly through sysfs.

Neil Horman & Stephen Hemminger are working on a solution for
NAPI currently.  In the meantime, remove this tie between
work limits and interrupt moderation.
Signed-off-by: default avatarJeff Kirsher <jeffrey.t.kirsher@intel.com>
CC: Ben Hutchings <bhutchings@solarflare.com>
Tested-by: default avatarPhil Schmitt <phillip.j.schmitt@intel.com>
parent 51a76c30
...@@ -2108,8 +2108,6 @@ static int ixgbe_get_coalesce(struct net_device *netdev, ...@@ -2108,8 +2108,6 @@ static int ixgbe_get_coalesce(struct net_device *netdev,
{ {
struct ixgbe_adapter *adapter = netdev_priv(netdev); struct ixgbe_adapter *adapter = netdev_priv(netdev);
ec->tx_max_coalesced_frames_irq = adapter->tx_work_limit;
/* only valid if in constant ITR mode */ /* only valid if in constant ITR mode */
if (adapter->rx_itr_setting <= 1) if (adapter->rx_itr_setting <= 1)
ec->rx_coalesce_usecs = adapter->rx_itr_setting; ec->rx_coalesce_usecs = adapter->rx_itr_setting;
...@@ -2177,9 +2175,6 @@ static int ixgbe_set_coalesce(struct net_device *netdev, ...@@ -2177,9 +2175,6 @@ static int ixgbe_set_coalesce(struct net_device *netdev,
&& ec->tx_coalesce_usecs) && ec->tx_coalesce_usecs)
return -EINVAL; return -EINVAL;
if (ec->tx_max_coalesced_frames_irq)
adapter->tx_work_limit = ec->tx_max_coalesced_frames_irq;
if ((ec->rx_coalesce_usecs > (IXGBE_MAX_EITR >> 2)) || if ((ec->rx_coalesce_usecs > (IXGBE_MAX_EITR >> 2)) ||
(ec->tx_coalesce_usecs > (IXGBE_MAX_EITR >> 2))) (ec->tx_coalesce_usecs > (IXGBE_MAX_EITR >> 2)))
return -EINVAL; return -EINVAL;
...@@ -2214,7 +2209,6 @@ static int ixgbe_set_coalesce(struct net_device *netdev, ...@@ -2214,7 +2209,6 @@ static int ixgbe_set_coalesce(struct net_device *netdev,
for (i = 0; i < num_vectors; i++) { for (i = 0; i < num_vectors; i++) {
q_vector = adapter->q_vector[i]; q_vector = adapter->q_vector[i];
q_vector->tx.work_limit = adapter->tx_work_limit;
if (q_vector->tx.count && !q_vector->rx.count) if (q_vector->tx.count && !q_vector->rx.count)
/* tx only */ /* tx only */
q_vector->itr = tx_itr_param; q_vector->itr = tx_itr_param;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment