ixgbe: Add support for IPv6 and UDP to ixgbe_get_headlen
authorAlexander Duyck <alexander.h.duyck@intel.com>
Thu, 24 May 2012 08:26:29 +0000 (08:26 +0000)
committerJeff Kirsher <jeffrey.t.kirsher@intel.com>
Tue, 23 Oct 2012 04:13:48 +0000 (21:13 -0700)
commita048b40e0f9502bc75d7f9904c5399a0a87fa479
treedb65df2be656ad4bf22239dd7653fe3ee07b06b2
parentd94ce9b283736a876b2e6dec665c68e5e8b5d55e
ixgbe: Add support for IPv6 and UDP to ixgbe_get_headlen

This change adds support for IPv6 and UDP to ixgbe_get_headlen. The
advantage to this is that we can now handle ipv4/UDP, ipv6/TCP, and
ipv6/UDP with a single memcpy instead of having to do them in multiple
pskb_may_pull calls.

A quick bit of testing shows that we increase throughput for a single
session of netperf from 8800Mpbs to about 9300Mpbs in the case of ipv6/TCP.
As such overall ipv6 performance should improve with this change.

Signed-off-by: Alexander Duyck <alexander.h.duyck@intel.com>
Tested-by: Stephen Ko <stephen.s.ko@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
drivers/net/ethernet/intel/ixgbe/ixgbe_main.c