diff options
author | Jesse Brandeburg <jesse.brandeburg@intel.com> | 2006-12-15 04:34:46 -0500 |
---|---|---|
committer | Jeff Garzik <jeff@garzik.org> | 2006-12-26 15:51:29 -0500 |
commit | 72f3ab7462f4e153d1e8ac78e379716ad71d6923 (patch) | |
tree | 05430b6f1ee8f1ba8488abbae7d9e39dcaba4c50 /drivers/net/e1000 | |
parent | 3d5460a0ba17437cf278ee46886d557340d028da (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.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/net/e1000/e1000_main.c b/drivers/net/e1000/e1000_main.c index f772e4dc328f..9c2494955bfc 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, | |||
911 | (adapter->hw.mac_type != e1000_82547)) | 911 | (adapter->hw.mac_type != e1000_82547)) |
912 | netdev->features |= NETIF_F_TSO; | 912 | netdev->features |= NETIF_F_TSO; |
913 | 913 | ||
914 | #ifdef CONFIG_DEBUG_SLAB | ||
915 | /* 82544's work arounds do not play nicely with DEBUG SLAB */ | ||
916 | if (adapter->hw.mac_type == e1000_82544) | ||
917 | netdev->features &= ~NETIF_F_TSO; | ||
918 | #endif | ||
919 | |||
914 | #ifdef NETIF_F_TSO6 | 920 | #ifdef NETIF_F_TSO6 |
915 | if (adapter->hw.mac_type > e1000_82547_rev_2) | 921 | if (adapter->hw.mac_type > e1000_82547_rev_2) |
916 | netdev->features |= NETIF_F_TSO6; | 922 | netdev->features |= NETIF_F_TSO6; |