From: Jesse Brandeburg Date: Fri, 15 Dec 2006 09:34:46 +0000 (+0100) Subject: [PATCH] e1000: disable TSO on the 82544 with slab debugging X-Git-Tag: v2.6.20-rc3~56^2~33 X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=72f3ab7462f4e153d1e8ac78e379716ad71d6923;p=linux-2.6 [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 Signed-off-by: Auke Kok Signed-off-by: Arjan van de Ven Signed-off-by: Jeff Garzik --- diff --git a/drivers/net/e1000/e1000_main.c b/drivers/net/e1000/e1000_main.c index f772e4dc32..9c2494955b 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;