OSDN Git Service

netfilter: flowtable: dst_check() from garbage collector path
authorPablo Neira Ayuso <pablo@netfilter.org>
Sun, 28 Mar 2021 21:08:55 +0000 (23:08 +0200)
committerPablo Neira Ayuso <pablo@netfilter.org>
Wed, 31 Mar 2021 20:34:11 +0000 (22:34 +0200)
commit8b9229d15877ec77775633f058d14145f6eb98fa
treefce382c7beb58215e6e6ad99bc8b36a8999fda87
parent5c701e71961af0ec8227ea615f1646dbe98aea1a
netfilter: flowtable: dst_check() from garbage collector path

Move dst_check() to the garbage collector path. Stale routes trigger the
flow entry teardown state which makes affected flows go back to the
classic forwarding path to re-evaluate flow offloading.

IPv6 requires the dst cookie to work, store it in the flow_tuple,
otherwise dst_check() always fails.

Fixes: e5075c0badaa ("netfilter: flowtable: call dst_check() to fall back to classic forwarding")
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
include/net/netfilter/nf_flow_table.h
net/netfilter/nf_flow_table_core.c
net/netfilter/nf_flow_table_ip.c