summaryrefslogtreecommitdiff
path: root/drivers/net
diff options
context:
space:
mode:
authorDaniel Borkmann <daniel@iogearbox.net>2016-03-09 03:00:02 +0100
committerMichael Bestas <mkbestas@lineageos.org>2022-04-19 00:51:37 +0300
commit340293f93556eb2b31f4216ccf5b7ec7d145d6d7 (patch)
tree4f082843e5dcd43db38a95be5c0c2af5329d15a2 /drivers/net
parent86c651d631b89084f7bc5925c73091f8fbb0e630 (diff)
ip_tunnel: add support for setting flow label via collect metadata
This patch extends udp_tunnel6_xmit_skb() to pass in the IPv6 flow label from call sites. Currently, there's no such option and it's always set to zero when writing ip6_flow_hdr(). Add a label member to ip_tunnel_key, so that flow-based tunnels via collect metadata frontends can make use of it. vxlan and geneve will be converted to add flow label support separately. Signed-off-by: Daniel Borkmann <daniel@iogearbox.net> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Chatur27 <jasonbright2709@gmail.com>
Diffstat (limited to 'drivers/net')
-rw-r--r--drivers/net/geneve.c2
-rw-r--r--drivers/net/vxlan.c2
2 files changed, 2 insertions, 2 deletions
diff --git a/drivers/net/geneve.c b/drivers/net/geneve.c
index a4b6a058c203..19854416190e 100644
--- a/drivers/net/geneve.c
+++ b/drivers/net/geneve.c
@@ -965,7 +965,7 @@ static netdev_tx_t geneve6_xmit_skb(struct sk_buff *skb, struct net_device *dev,
ttl = ttl ? : ip6_dst_hoplimit(dst);
}
err = udp_tunnel6_xmit_skb(dst, gs6->sock->sk, skb, dev,
- &fl6.saddr, &fl6.daddr, prio, ttl,
+ &fl6.saddr, &fl6.daddr, prio, ttl, 0,
sport, geneve->dst_port, !udp_csum);
return NETDEV_TX_OK;
diff --git a/drivers/net/vxlan.c b/drivers/net/vxlan.c
index 4d44ec5b7cd7..d93e86055d5e 100644
--- a/drivers/net/vxlan.c
+++ b/drivers/net/vxlan.c
@@ -1783,7 +1783,7 @@ static int vxlan6_xmit_skb(struct dst_entry *dst, struct sock *sk,
skb_set_inner_protocol(skb, htons(ETH_P_TEB));
udp_tunnel6_xmit_skb(dst, sk, skb, dev, saddr, daddr, prio,
- ttl, src_port, dst_port,
+ ttl, 0, src_port, dst_port,
!!(vxflags & VXLAN_F_UDP_ZERO_CSUM6_TX));
return 0;
err: