diff options
| author | David S. Miller <davem@davemloft.net> | 2014-05-23 16:29:04 -0400 |
|---|---|---|
| committer | David S. Miller <davem@davemloft.net> | 2014-05-23 16:29:04 -0400 |
| commit | 76fcee2438b90e473b67ea52b9b9e0648aa501f8 (patch) | |
| tree | 842991b315c84e51fa4c2ececfba60e2992944b9 /include/uapi/linux | |
| parent | 0c3592b821eb4069c8ab3934fc0e78f358d88ae4 (diff) | |
| parent | 6b649feafe10b293f4bd5a74aca95faf625ae525 (diff) | |
Merge branch 'inet_csums_part3'
Tom Herbert says:
====================
net: Checksum offload changes - Part III
I am working on overhauling RX checksum offload. Goals of this effort
are:
- Specify what exactly it means when driver returns CHECKSUM_UNNECESSARY
- Preserve CHECKSUM_COMPLETE through encapsulation layers
- Don't do skb_checksum more than once per packet
- Unify GRO and non-GRO csum verification as much as possible
- Unify the checksum functions (checksum_init)
- Simply code
What is in this third patch set:
- Remove sk_no_check from sunrpc (doesn't seem to have any effect)
- Eliminate no_check from protosw. All protocols are using default of
zero for this
- Split sk_no_check into sk_no_check_tx and sk_no_check_rx
- Make enabling of UDP6 more restrictive and explicit
- Support zero UDP6 checksums in l2tp
V2: Took out vxlan changes to set zero csums in IPv6, this will
be in a later patch set.
V3: Fixed bug in restricting UDP6 checksums.
Please review carefully and test if possible, mucking with basic
checksum functions is always a little precarious :-)
====================
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/uapi/linux')
| -rw-r--r-- | include/uapi/linux/l2tp.h | 2 | ||||
| -rw-r--r-- | include/uapi/linux/udp.h | 2 |
2 files changed, 4 insertions, 0 deletions
diff --git a/include/uapi/linux/l2tp.h b/include/uapi/linux/l2tp.h index 8adb68160327..21caa2631c20 100644 --- a/include/uapi/linux/l2tp.h +++ b/include/uapi/linux/l2tp.h | |||
| @@ -124,6 +124,8 @@ enum { | |||
| 124 | L2TP_ATTR_STATS, /* nested */ | 124 | L2TP_ATTR_STATS, /* nested */ |
| 125 | L2TP_ATTR_IP6_SADDR, /* struct in6_addr */ | 125 | L2TP_ATTR_IP6_SADDR, /* struct in6_addr */ |
| 126 | L2TP_ATTR_IP6_DADDR, /* struct in6_addr */ | 126 | L2TP_ATTR_IP6_DADDR, /* struct in6_addr */ |
| 127 | L2TP_ATTR_UDP_ZERO_CSUM6_TX, /* u8 */ | ||
| 128 | L2TP_ATTR_UDP_ZERO_CSUM6_RX, /* u8 */ | ||
| 127 | __L2TP_ATTR_MAX, | 129 | __L2TP_ATTR_MAX, |
| 128 | }; | 130 | }; |
| 129 | 131 | ||
diff --git a/include/uapi/linux/udp.h b/include/uapi/linux/udp.h index e2bcfd75a30d..16574ea18f0c 100644 --- a/include/uapi/linux/udp.h +++ b/include/uapi/linux/udp.h | |||
| @@ -29,6 +29,8 @@ struct udphdr { | |||
| 29 | /* UDP socket options */ | 29 | /* UDP socket options */ |
| 30 | #define UDP_CORK 1 /* Never send partially complete segments */ | 30 | #define UDP_CORK 1 /* Never send partially complete segments */ |
| 31 | #define UDP_ENCAP 100 /* Set the socket to accept encapsulated packets */ | 31 | #define UDP_ENCAP 100 /* Set the socket to accept encapsulated packets */ |
| 32 | #define UDP_NO_CHECK6_TX 101 /* Disable sending checksum for UDP6X */ | ||
| 33 | #define UDP_NO_CHECK6_RX 102 /* Disable accpeting checksum for UDP6 */ | ||
| 32 | 34 | ||
| 33 | /* UDP encapsulation types */ | 35 | /* UDP encapsulation types */ |
| 34 | #define UDP_ENCAP_ESPINUDP_NON_IKE 1 /* draft-ietf-ipsec-nat-t-ike-00/01 */ | 36 | #define UDP_ENCAP_ESPINUDP_NON_IKE 1 /* draft-ietf-ipsec-nat-t-ike-00/01 */ |
