geneve: Use ip_tunnel_key flow flags in route lookups
authorPaul Chaignon <paul@isovalent.com>
Mon, 25 Jul 2022 14:32:15 +0000 (16:32 +0200)
committerDaniel Borkmann <daniel@iogearbox.net>
Tue, 26 Jul 2022 10:43:16 +0000 (12:43 +0200)
Use the new ip_tunnel_key field with the flow flags in the IPv4 route
lookups for the encapsulated packet. This will be used by the
bpf_skb_set_tunnel_key helper in the subsequent commit.

Signed-off-by: Paul Chaignon <paul@isovalent.com>
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
Reviewed-by: Nikolay Aleksandrov <razor@blackwall.org>
Acked-by: Martin KaFai Lau <kafai@fb.com>
Link: https://lore.kernel.org/bpf/fcc2e0eea01e8ea465a180126366ec20596ba530.1658759380.git.paul@isovalent.com
drivers/net/geneve.c

index 2495a57..018d365 100644 (file)
@@ -815,6 +815,7 @@ static struct rtable *geneve_get_v4_rt(struct sk_buff *skb,
        fl4->saddr = info->key.u.ipv4.src;
        fl4->fl4_dport = dport;
        fl4->fl4_sport = sport;
+       fl4->flowi4_flags = info->key.flow_flags;
 
        tos = info->key.tos;
        if ((tos == 1) && !geneve->cfg.collect_md) {