aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorTom Herbert <therbert@google.com>2015-02-10 19:30:32 -0500
committerDavid S. Miller <davem@davemloft.net>2015-02-11 18:12:13 -0500
commit0ace2ca89cbd6bcdf2b9d2df1fa0fa24ea9d1653 (patch)
tree77d53c7e1f2c5b67b683cbb874f3587eddea81cf /include
parent15e2396d4e3ce23188852b74d924107982c63b42 (diff)
vxlan: Use checksum partial with remote checksum offload
Change remote checksum handling to set checksum partial as default behavior. Added an iflink parameter to configure not using checksum partial (calling csum_partial to update checksum). Signed-off-by: Tom Herbert <therbert@google.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include')
-rw-r--r--include/net/vxlan.h4
-rw-r--r--include/uapi/linux/if_link.h1
2 files changed, 4 insertions, 1 deletions
diff --git a/include/net/vxlan.h b/include/net/vxlan.h
index 2927d6244481..eabd3a038674 100644
--- a/include/net/vxlan.h
+++ b/include/net/vxlan.h
@@ -128,13 +128,15 @@ struct vxlan_sock {
128#define VXLAN_F_REMCSUM_TX 0x200 128#define VXLAN_F_REMCSUM_TX 0x200
129#define VXLAN_F_REMCSUM_RX 0x400 129#define VXLAN_F_REMCSUM_RX 0x400
130#define VXLAN_F_GBP 0x800 130#define VXLAN_F_GBP 0x800
131#define VXLAN_F_REMCSUM_NOPARTIAL 0x1000
131 132
132/* Flags that are used in the receive patch. These flags must match in 133/* Flags that are used in the receive patch. These flags must match in
133 * order for a socket to be shareable 134 * order for a socket to be shareable
134 */ 135 */
135#define VXLAN_F_RCV_FLAGS (VXLAN_F_GBP | \ 136#define VXLAN_F_RCV_FLAGS (VXLAN_F_GBP | \
136 VXLAN_F_UDP_ZERO_CSUM6_RX | \ 137 VXLAN_F_UDP_ZERO_CSUM6_RX | \
137 VXLAN_F_REMCSUM_RX) 138 VXLAN_F_REMCSUM_RX | \
139 VXLAN_F_REMCSUM_NOPARTIAL)
138 140
139struct vxlan_sock *vxlan_sock_add(struct net *net, __be16 port, 141struct vxlan_sock *vxlan_sock_add(struct net *net, __be16 port,
140 vxlan_rcv_t *rcv, void *data, 142 vxlan_rcv_t *rcv, void *data,
diff --git a/include/uapi/linux/if_link.h b/include/uapi/linux/if_link.h
index 0deee3eeddbf..dfd0bb22e554 100644
--- a/include/uapi/linux/if_link.h
+++ b/include/uapi/linux/if_link.h
@@ -374,6 +374,7 @@ enum {
374 IFLA_VXLAN_REMCSUM_TX, 374 IFLA_VXLAN_REMCSUM_TX,
375 IFLA_VXLAN_REMCSUM_RX, 375 IFLA_VXLAN_REMCSUM_RX,
376 IFLA_VXLAN_GBP, 376 IFLA_VXLAN_GBP,
377 IFLA_VXLAN_REMCSUM_NOPARTIAL,
377 __IFLA_VXLAN_MAX 378 __IFLA_VXLAN_MAX
378}; 379};
379#define IFLA_VXLAN_MAX (__IFLA_VXLAN_MAX - 1) 380#define IFLA_VXLAN_MAX (__IFLA_VXLAN_MAX - 1)