linux/drivers/net/ixgbe
Andy Gospodarek 28c8e4790c ixgbe: fix automatic LRO/RSC settings for low latency
This patch added to 2.6.34:

	commit f8d1dcaf88
	Author: Jesse Brandeburg <jesse.brandeburg@intel.com>
	Date:   Tue Apr 27 01:37:20 2010 +0000

	    ixgbe: enable extremely low latency

introduced a feature where LRO (called RSC on the hardware) was disabled
automatically when setting rx-usecs to 0 via ethtool.  Some might not
like the fact that LRO was disabled automatically, but I'm fine with
that.  What I don't like is that LRO/RSC is automatically enabled when
rx-usecs is set >0 via ethtool.

This would certainly be a problem if the device was used for forwarding
and it was determined that the low latency wasn't needed after the
device was already forwarding.  I played around with saving the state of
LRO in the driver, but it just didn't seem worthwhile and would require
a small change to dev_disable_lro() that I did not like.

This patch simply leaves LRO disabled when setting rx-usecs >0 and
requires that the user enable it again.  An extra informational message
will also now appear in the log so users can understand why LRO isn't
being enabled as they expect.

Inconsistency of LRO setting first noticed by Stanislaw Gruszka.

Signed-off-by: Andy Gospodarek <andy@greyhouse.net>
CC: Stanislaw Gruszka <sgruszka@redhat.com>
CC: stable@kernel.org
Tested-by: Stephen Ko <stephen.s.ko@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2010-06-13 18:20:53 -07:00
..
ixgbe_82598.c ixgbe:add support for a new 82599 10G Base-T device 2010-05-20 23:07:06 -07:00
ixgbe_82599.c ixgbe:add support for a new 82599 10G Base-T device 2010-05-20 23:07:06 -07:00
ixgbe_common.c ixgbe: return IXGBE_ERR_RAR_INDEX when out of range 2010-06-03 03:28:28 -07:00
ixgbe_common.h ixgbe: Refactor common code between 82598 & 82599 to accommodate new hardware 2010-05-13 21:07:34 -07:00
ixgbe_dcb_82598.c ixgbe: update copyright dates 2010-01-13 17:12:45 -08:00
ixgbe_dcb_82598.h ixgbe: update copyright dates 2010-01-13 17:12:45 -08:00
ixgbe_dcb_82599.c ixgbe: update copyright dates 2010-01-13 17:12:45 -08:00
ixgbe_dcb_82599.h ixgbe: update copyright dates 2010-01-13 17:12:45 -08:00
ixgbe_dcb_nl.c drivers/net: Remove unnecessary returns from void function()s 2010-05-14 00:19:28 -07:00
ixgbe_dcb.c ixgbe: update copyright dates 2010-01-13 17:12:45 -08:00
ixgbe_dcb.h ixgbe: update copyright dates 2010-01-13 17:12:45 -08:00
ixgbe_ethtool.c ixgbe: fix automatic LRO/RSC settings for low latency 2010-06-13 18:20:53 -07:00
ixgbe_fcoe.c ixgbe: remove some redundant code in setting FCoE FIP filter 2010-05-18 19:44:18 -07:00
ixgbe_fcoe.h ixgbe: update copyright dates 2010-01-13 17:12:45 -08:00
ixgbe_main.c ixgbe: fix for race with 8259(8|9) during shutdown 2010-06-13 18:20:52 -07:00
ixgbe_mbx.c ixgbe: Mailbox header and code module 2010-01-10 13:34:24 -08:00
ixgbe_mbx.h ixgbe: Mailbox header and code module 2010-01-10 13:34:24 -08:00
ixgbe_phy.c ixgbe:add support for a new 82599 10G Base-T device 2010-05-20 23:07:06 -07:00
ixgbe_phy.h ixgbe:add support for a new 82599 10G Base-T device 2010-05-20 23:07:06 -07:00
ixgbe_sriov.c ixgbe: Streamline MC filter setup for VFs 2010-05-06 00:31:44 -07:00
ixgbe_sriov.h ixgbe: Add support for VF MAC and VLAN configuration 2010-05-05 21:15:33 -07:00
ixgbe_type.h ixgbe: return IXGBE_ERR_RAR_INDEX when out of range 2010-06-03 03:28:28 -07:00
ixgbe.h ixgbe:add support for a new 82599 10G Base-T device 2010-05-20 23:07:06 -07:00
Makefile Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2010-01-23 00:31:06 -08:00