linux-stable/net
Florian Westphal 8e51830e29 netfilter: nf_tables: defer gc run if previous batch is still pending
Don't queue more gc work, else we may queue the same elements multiple
times.

If an element is flagged as dead, this can mean that either the previous
gc request was invalidated/discarded by a transaction or that the previous
request is still pending in the system work queue.

The latter will happen if the gc interval is set to a very low value,
e.g. 1ms, and system work queue is backlogged.

The sets refcount is 1 if no previous gc requeusts are queued, so add
a helper for this and skip gc run if old requests are pending.

Add a helper for this and skip the gc run in this case.

Fixes: f6c383b8c3 ("netfilter: nf_tables: adapt set backend to use GC transaction API")
Signed-off-by: Florian Westphal <fw@strlen.de>
Reviewed-by: Pablo Neira Ayuso <pablo@netfilter.org>
2023-08-23 16:12:59 +02:00
..
6lowpan
9p 9p: remove dead stores (variable set again without being read) 2023-07-20 19:14:50 +00:00
802
8021q Revert "vlan: Fix VLAN 0 memory leak" 2023-08-14 08:14:00 +01:00
appletalk
atm
ax25
batman-adv batman-adv: Hold rtnl lock during MTU update via netlink 2023-08-22 17:25:10 -07:00
bluetooth Bluetooth: MGMT: Use correct address for memcpy() 2023-07-20 11:27:22 -07:00
bpf
bpfilter
bridge Revert "bridge: Add extack warning when enabling STP in netns." 2023-07-20 10:46:28 +02:00
caif
can can: raw: add missing refcount for memory leak fix 2023-08-22 17:18:50 -07:00
ceph libceph: fix potential hang in ceph_osdc_notify() 2023-08-02 09:07:34 +02:00
core net: validate veth and vxcan peer ifindexes 2023-08-20 11:40:03 +01:00
dcb net: dcb: choose correct policy to parse DCB_ATTR_BCN 2023-08-01 21:07:46 -07:00
dccp ipv4: fix data-races around inet->inet_id 2023-08-20 11:40:49 +01:00
devlink devlink: add missing unregister linecard notification 2023-08-18 18:29:12 -07:00
dns_resolver
dsa net: dsa: fix older DSA drivers using phylink 2023-07-27 17:19:46 -07:00
ethernet
ethtool
handshake
hsr
ieee802154
ife
ipv4 ipv4: fix data-races around inet->inet_id 2023-08-20 11:40:49 +01:00
ipv6 ipv6: fix indentation of a config attribute 2023-08-16 10:03:08 +01:00
iucv
kcm
key
l2tp net: annotate data-races around sk->sk_mark 2023-07-29 18:13:41 +01:00
l3mdev
lapb
llc llc: Don't drop packet from non-root netns. 2023-07-20 10:46:28 +02:00
mac80211 wifi: mac80211: limit reorder_buf_filtered to avoid UBSAN warning 2023-08-21 09:49:54 +02:00
mac802154
mctp
mpls
mptcp mptcp: fix disconnect vs accept race 2023-08-04 18:26:27 -07:00
ncsi
netfilter netfilter: nf_tables: defer gc run if previous batch is still pending 2023-08-23 16:12:59 +02:00
netlabel
netlink
netrom
nfc
nsh
openvswitch net: openvswitch: reject negative ifindex 2023-08-15 19:07:52 -07:00
packet net/packet: annotate data-races around tp->status 2023-08-04 18:03:16 -07:00
phonet
psample
qrtr
rds
rfkill
rose
rxrpc
sched net/sched: fix a qdisc modification with ambiguous command request 2023-08-23 09:44:48 +01:00
sctp ipv4: fix data-races around inet->inet_id 2023-08-20 11:40:49 +01:00
smc net/smc: Use correct buffer sizes when switching between TCP and SMC 2023-08-09 11:20:29 +01:00
strparser
sunrpc sunrpc: set the bv_offset of first bvec in svc_tcp_sendmsg 2023-08-14 15:02:25 -04:00
switchdev
tipc tipc: stop tipc crypto on failure in tipc_node_create 2023-07-27 11:45:05 +02:00
tls net: tls: set MSG_SPLICE_PAGES consistently 2023-08-10 11:36:57 -07:00
unix net: add missing data-race annotations around sk->sk_peek_off 2023-07-29 18:13:41 +01:00
vmw_vsock
wireless wifi: nl80211: fix integer overflow in nl80211_parse_mbssid_elems() 2023-08-09 14:43:35 +02:00
x25
xdp xsk: fix refcount underflow in error path 2023-08-09 20:08:04 -07:00
xfrm ipsec-2023-08-15 2023-08-16 08:57:41 +01:00
compat.c
devres.c
Kconfig
Kconfig.debug
Makefile
socket.c
sysctl_net.c