tcp: Fix conditions to determine checksum offload
authorTom Herbert <tom@herbertland.com>
Mon, 14 Dec 2015 19:19:45 +0000 (11:19 -0800)
committerDavid S. Miller <davem@davemloft.net>
Tue, 15 Dec 2015 21:50:20 +0000 (16:50 -0500)
commit9a49850d0af7b9fd14d091dfe61ef6cb369f86b9
tree32d6e3173c2bd3e92084884f8006d5a2a73e3ffb
parentc8cd0989bd151fda87bbf10887b3df18021284bc
tcp: Fix conditions to determine checksum offload

In tcp_send_sendpage and tcp_sendmsg we check the route capabilities to
determine if checksum offload can be performed. This check currently
does not take the IP protocol into account for devices that advertise
only one of NETIF_F_IPV6_CSUM or NETIF_F_IP_CSUM. This patch adds a
function to check capabilities for checksum offload with a socket
called sk_check_csum_caps. This function checks for specific IPv4 or
IPv6 offload support based on the family of the socket.

Signed-off-by: Tom Herbert <tom@herbertland.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/net/sock.h
net/ipv4/tcp.c