netfilter: conntrack: allow insertion clash of gre protocol
authorFaicker Mo <faicker.mo@ucloud.cn>
Sun, 23 Apr 2023 02:29:57 +0000 (10:29 +0800)
committerFlorian Westphal <fw@strlen.de>
Thu, 18 May 2023 06:48:55 +0000 (08:48 +0200)
NVGRE tunnel is used in the VM-to-VM communications. The VM packets
are encapsulated in NVGRE and sent from the host. For NVGRE
there are two tuples(outer sip and outer dip) in the host conntrack item.
Insertion clashes are more likely to happen if the concurrent connections
are sent from the VM.

Signed-off-by: Faicker Mo <faicker.mo@ucloud.cn>
Signed-off-by: Florian Westphal <fw@strlen.de>
net/netfilter/nf_conntrack_proto_gre.c

index 728eeb0..ad6f0ca 100644 (file)
@@ -296,6 +296,7 @@ void nf_conntrack_gre_init_net(struct net *net)
 /* protocol helper struct */
 const struct nf_conntrack_l4proto nf_conntrack_l4proto_gre = {
        .l4proto         = IPPROTO_GRE,
+       .allow_clash     = true,
 #ifdef CONFIG_NF_CONNTRACK_PROCFS
        .print_conntrack = gre_print_conntrack,
 #endif