netfilter: nft_counter: Synchronize nft_counter_reset() against reader.
authorSebastian Andrzej Siewior <bigeasy@linutronix.de>
Tue, 20 Aug 2024 07:54:31 +0000 (09:54 +0200)
committerPablo Neira Ayuso <pablo@netfilter.org>
Tue, 20 Aug 2024 10:26:36 +0000 (12:26 +0200)
commita0b39e2dc7017ac667b70bdeee5293e410fab2fb
treea31be42759da3a3f1c68753878205615a448617f
parent1eacdd71b3436b54d5fc8218c4bb0187d92a6892
netfilter: nft_counter: Synchronize nft_counter_reset() against reader.

nft_counter_reset() resets the counter by subtracting the previously
retrieved value from the counter. This is a write operation on the
counter and as such it requires to be performed with a write sequence of
nft_counter_seq to serialize against its possible reader.

Update the packets/ bytes within write-sequence of nft_counter_seq.

Fixes: d84701ecbcd6a ("netfilter: nft_counter: rework atomic dump and reset")
Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Reviewed-by: Florian Westphal <fw@strlen.de>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
net/netfilter/nft_counter.c