[NET]: IPV6 checksum offloading in network devices
The existing model for checksum offload does not correctly handle
devices that can offload IPV4 and IPV6 only. The NETIF_F_HW_CSUM flag
implies device can do any arbitrary protocol.
This patch:
* adds NETIF_F_IPV6_CSUM for those devices
* fixes bnx2 and tg3 devices that need it
* add NETIF_F_IPV6_CSUM to ipv6 output (incl GSO)
* fixes assumptions about NETIF_F_ALL_CSUM in nat
* adjusts bridge union of checksumming computation
Signed-off-by:
David S. Miller <davem@davemloft.net>
Showing
- drivers/net/bnx2.c 3 additions, 3 deletionsdrivers/net/bnx2.c
- drivers/net/tg3.c 3 additions, 4 deletionsdrivers/net/tg3.c
- include/linux/netdevice.h 6 additions, 2 deletionsinclude/linux/netdevice.h
- net/bridge/br_if.c 9 additions, 1 deletionnet/bridge/br_if.c
- net/core/dev.c 21 additions, 3 deletionsnet/core/dev.c
- net/ipv4/af_inet.c 3 additions, 0 deletionsnet/ipv4/af_inet.c
- net/ipv4/ip_output.c 1 addition, 1 deletionnet/ipv4/ip_output.c
- net/ipv4/netfilter/nf_nat_helper.c 2 additions, 2 deletionsnet/ipv4/netfilter/nf_nat_helper.c
- net/ipv6/ipv6_sockglue.c 1 addition, 1 deletionnet/ipv6/ipv6_sockglue.c
Loading
Please register or sign in to comment