net/sched: act_ct: Fix flow table lookup after ct clear or switching zones
authorPaul Blakey <paulb@nvidia.com>
Thu, 17 Feb 2022 09:30:48 +0000 (11:30 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 2 Mar 2022 10:47:57 +0000 (11:47 +0100)
commita95ea90deb3071c1ded77a05e91cfebc5238d908
tree83f1045c2c10e0782f043a1ce1fb3f61f0d3ed7c
parentd064d0c39405a7f0fc76d9b70ce9fb3bf434fe05
net/sched: act_ct: Fix flow table lookup after ct clear or switching zones

commit 2f131de361f6d0eaff17db26efdb844c178432f8 upstream.

Flow table lookup is skipped if packet either went through ct clear
action (which set the IP_CT_UNTRACKED flag on the packet), or while
switching zones and there is already a connection associated with
the packet. This will result in no SW offload of the connection,
and the and connection not being removed from flow table with
TCP teardown (fin/rst packet).

To fix the above, remove these unneccary checks in flow
table lookup.

Fixes: 46475bb20f4b ("net/sched: act_ct: Software offload of established flows")
Signed-off-by: Paul Blakey <paulb@nvidia.com>
Acked-by: Marcelo Ricardo Leitner <marcelo.leitner@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
net/sched/act_ct.c