bpf: support flow label for bpf_skb_{set, get}_tunnel_key
authorDaniel Borkmann <daniel@iogearbox.net>
Wed, 9 Mar 2016 02:00:05 +0000 (03:00 +0100)
committerDavid S. Miller <davem@davemloft.net>
Fri, 11 Mar 2016 20:14:27 +0000 (15:14 -0500)
commit4018ab1875e0d00b84ac61bc15427136ad55849e
tree8ffadc3b984132b1cd44a8ab53e7fce257a8198f
parent8eb3b99554b82da968d1fbc00df9f3156c5e2d63
bpf: support flow label for bpf_skb_{set, get}_tunnel_key

This patch extends bpf_tunnel_key with a tunnel_label member, that maps
to ip_tunnel_key's label so underlying backends like vxlan and geneve
can propagate the label to udp_tunnel6_xmit_skb(), where it's being set
in the IPv6 header. It allows for having 20 more bits to encode/decode
flow related meta information programmatically. Tested with vxlan and
geneve.

Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
Acked-by: Alexei Starovoitov <ast@kernel.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/uapi/linux/bpf.h
net/core/filter.c