• Santiago Leon's avatar
    ibmveth: Enable IPv6 checksum offload · ab78df75
    Santiago Leon authored
    This patch enables TCP checksum offload support for IPv6 on ibmveth.
    This completely eliminates the generation and checking of the checksum
    for IPv6 packets that are completely virtual and never touch a physical
    network.  A basic TCPIPV6_STREAM netperf run showed a ~30% throughput
    improvement when an MTU of 64000 was used.
    
    This featured is enabled by default, as is the case for IPv4 checksum
    offload.  When checksum offload is enabled the driver will negotiate
    IPv4 and IPv6 offload with the firmware separately and enable what
    is available.  As long as either IPv4 or IPv6 offload is supported
    and enabled the device will report that checksum offload is enabled.
    The device stats, available through ethtool, will display which
    checksum offload features are supported/enabled by firmware.
    
    Performance testing against a stock kernel shows no regression for IPv4
    or IPv6 in terms of throughput or processor utilization with checksum
    disabled or enabled.
    Signed-off-by: default avatarRobert Jennings <rcj@linux.vnet.ibm.com>
    Signed-off-by: default avatarSantiago Leon <santil@linux.vnet.ibm.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    ab78df75
ibmveth.c 50.5 KB