summaryrefslogtreecommitdiffstats
path: root/drivers/net/e1000
diff options
context:
space:
mode:
authorJesse Brandeburg <jesse.brandeburg@intel.com>2006-12-15 10:34:46 +0100
committerJeff Garzik <jeff@garzik.org>2006-12-26 15:51:29 -0500
commit72f3ab7462f4e153d1e8ac78e379716ad71d6923 (patch)
tree05430b6f1ee8f1ba8488abbae7d9e39dcaba4c50 /drivers/net/e1000
parent3d5460a0ba17437cf278ee46886d557340d028da (diff)
[PATCH] e1000: disable TSO on the 82544 with slab debugging
CONFIG_DEBUG_SLAB changes alignments of the data structures the slab allocators return. These break certain workarounds for TSO on the 82544. Since DEBUG_SLAB is relatively rare and not used for performance sensitive cases, the simplest fix is to disable TSO in this special situation. Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com> Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com> Signed-off-by: Arjan van de Ven <arjan@linux.intel.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
Diffstat (limited to 'drivers/net/e1000')
-rw-r--r--drivers/net/e1000/e1000_main.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/net/e1000/e1000_main.c b/drivers/net/e1000/e1000_main.c
index f772e4dc328..9c2494955bf 100644
--- a/drivers/net/e1000/e1000_main.c
+++ b/drivers/net/e1000/e1000_main.c
@@ -911,6 +911,12 @@ e1000_probe(struct pci_dev *pdev,
(adapter->hw.mac_type != e1000_82547))
netdev->features |= NETIF_F_TSO;
+#ifdef CONFIG_DEBUG_SLAB
+ /* 82544's work arounds do not play nicely with DEBUG SLAB */
+ if (adapter->hw.mac_type == e1000_82544)
+ netdev->features &= ~NETIF_F_TSO;
+#endif
+
#ifdef NETIF_F_TSO6
if (adapter->hw.mac_type > e1000_82547_rev_2)
netdev->features |= NETIF_F_TSO6;