Main-line Linux kernel tree http://www.kernel.org
Go to file
Vlad Buslov a63b662212 net/sched: act_ct: additional checks for outdated flows
Current nf_flow_is_outdated() implementation considers any flow table flow
which state diverged from its underlying CT connection status for teardown
which can be problematic in the following cases:

- Flow has never been offloaded to hardware in the first place either
because flow table has hardware offload disabled (flag
NF_FLOWTABLE_HW_OFFLOAD is not set) or because it is still pending on 'add'
workqueue to be offloaded for the first time. The former is incorrect, the
later generates excessive deletions and additions of flows.

- Flow is already pending to be updated on the workqueue. Tearing down such
flows will also generate excessive removals from the flow table, especially
on highly loaded system where the latency to re-offload a flow via 'add'
workqueue can be quite high.

When considering a flow for teardown as outdated verify that it is both
offloaded to hardware and doesn't have any pending updates.

Fixes: 41f2c7c342 ("net/sched: act_ct: Fix promotion of offloaded unreplied tuple")
Reviewed-by: Paul Blakey <paulb@nvidia.com>
Signed-off-by: Vlad Buslov <vladbu@nvidia.com>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
2023-10-25 11:35:57 +02:00
arch LoongArch fixes for v6.6-rc7 2023-10-19 11:02:28 -07:00
block
certs
crypto
Documentation Including fixes from bluetooth, netfilter, WiFi. 2023-10-19 12:08:18 -07:00
drivers r8152: Block future register access if register access fails 2023-10-22 11:46:18 +01:00
fs v6.6-rc7.vfs.fixes 2023-10-19 09:37:41 -07:00
include netfilter: flowtable: GC pushes back packets to classic path 2023-10-25 11:35:46 +02:00
init
io_uring
ipc
kernel v6.6-rc7.vfs.fixes 2023-10-19 09:37:41 -07:00
lib
LICENSES
mm
net net/sched: act_ct: additional checks for outdated flows 2023-10-25 11:35:57 +02:00
rust
samples
scripts
security
sound
tools Including fixes from bluetooth, netfilter, WiFi. 2023-10-19 12:08:18 -07:00
usr
virt
.clang-format
.cocciconfig
.get_maintainer.ignore
.gitattributes
.gitignore
.mailmap
.rustfmt.toml
COPYING
CREDITS
Kbuild
Kconfig
MAINTAINERS
Makefile Linux 6.6-rc6 2023-10-15 13:34:39 -07:00
README

Linux kernel
============

There are several guides for kernel developers and users. These guides can
be rendered in a number of formats, like HTML and PDF. Please read
Documentation/admin-guide/README.rst first.

In order to build the documentation, use ``make htmldocs`` or
``make pdfdocs``.  The formatted documentation can also be read online at:

    https://www.kernel.org/doc/html/latest/

There are various text files in the Documentation/ subdirectory,
several of them using the Restructured Text markup notation.

Please read the Documentation/process/changes.rst file, as it contains the
requirements for building and running the kernel, and information about
the problems which may result by upgrading your kernel.