aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/ixgbe/ixgbe_ethtool.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/net/ixgbe/ixgbe_ethtool.c')
-rw-r--r--drivers/net/ixgbe/ixgbe_ethtool.c11
1 files changed, 7 insertions, 4 deletions
diff --git a/drivers/net/ixgbe/ixgbe_ethtool.c b/drivers/net/ixgbe/ixgbe_ethtool.c
index 1464b33f1b8e..c6db9a04187d 100644
--- a/drivers/net/ixgbe/ixgbe_ethtool.c
+++ b/drivers/net/ixgbe/ixgbe_ethtool.c
@@ -1980,7 +1980,10 @@ static int ixgbe_set_coalesce(struct net_device *netdev,
1980 * any other value means disable eitr, which is best 1980 * any other value means disable eitr, which is best
1981 * served by setting the interrupt rate very high 1981 * served by setting the interrupt rate very high
1982 */ 1982 */
1983 adapter->eitr_param = IXGBE_MAX_INT_RATE; 1983 if (adapter->flags2 & IXGBE_FLAG2_RSC_ENABLED)
1984 adapter->eitr_param = IXGBE_MAX_RSC_INT_RATE;
1985 else
1986 adapter->eitr_param = IXGBE_MAX_INT_RATE;
1984 adapter->itr_setting = 0; 1987 adapter->itr_setting = 0;
1985 } 1988 }
1986 1989
@@ -2004,13 +2007,13 @@ static int ixgbe_set_flags(struct net_device *netdev, u32 data)
2004 2007
2005 ethtool_op_set_flags(netdev, data); 2008 ethtool_op_set_flags(netdev, data);
2006 2009
2007 if (!(adapter->flags & IXGBE_FLAG2_RSC_CAPABLE)) 2010 if (!(adapter->flags2 & IXGBE_FLAG2_RSC_CAPABLE))
2008 return 0; 2011 return 0;
2009 2012
2010 /* if state changes we need to update adapter->flags and reset */ 2013 /* if state changes we need to update adapter->flags and reset */
2011 if ((!!(data & ETH_FLAG_LRO)) != 2014 if ((!!(data & ETH_FLAG_LRO)) !=
2012 (!!(adapter->flags & IXGBE_FLAG2_RSC_ENABLED))) { 2015 (!!(adapter->flags2 & IXGBE_FLAG2_RSC_ENABLED))) {
2013 adapter->flags ^= IXGBE_FLAG2_RSC_ENABLED; 2016 adapter->flags2 ^= IXGBE_FLAG2_RSC_ENABLED;
2014 if (netif_running(netdev)) 2017 if (netif_running(netdev))
2015 ixgbe_reinit_locked(adapter); 2018 ixgbe_reinit_locked(adapter);
2016 else 2019 else