summaryrefslogtreecommitdiff
path: root/drivers/net/e1000/e1000_ethtool.c
diff options
context:
space:
mode:
authorAuke Kok <auke\-jan.h.kok@intel.com>2006-11-01 19:47:36 +0300
committerJeff Garzik <jeff@garzik.org>2006-12-02 08:11:58 +0300
commit87ca4e5b8d729fc157a0a599d78ccab245fc0602 (patch)
tree69bec3c1d367d26253678e6fbd9eff184c68e7ee /drivers/net/e1000/e1000_ethtool.c
parentb00dae7cce465323850c3e1fd3ac8b2d9229735c (diff)
downloadlinux-87ca4e5b8d729fc157a0a599d78ccab245fc0602.tar.xz
e1000: FIX: enable hw TSO for IPV6
Enable TSO for IPV6. All e1000 hardware supports it. This reduces CPU utilizations by 50% when transmitting IPv6 frames. Fix symbol naming enabling ipv6 TSO. Turn off TSO6 for 10/100. Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>
Diffstat (limited to 'drivers/net/e1000/e1000_ethtool.c')
-rw-r--r--drivers/net/e1000/e1000_ethtool.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/net/e1000/e1000_ethtool.c b/drivers/net/e1000/e1000_ethtool.c
index 82d2c78e1696..b9c0927d79b3 100644
--- a/drivers/net/e1000/e1000_ethtool.c
+++ b/drivers/net/e1000/e1000_ethtool.c
@@ -348,6 +348,13 @@ e1000_set_tso(struct net_device *netdev, uint32_t data)
else
netdev->features &= ~NETIF_F_TSO;
+#ifdef NETIF_F_TSO6
+ if (data)
+ netdev->features |= NETIF_F_TSO6;
+ else
+ netdev->features &= ~NETIF_F_TSO6;
+#endif
+
DPRINTK(PROBE, INFO, "TSO is %s\n", data ? "Enabled" : "Disabled");
adapter->tso_force = TRUE;
return 0;