From: Pablo Neira Ayuso <[email protected]>
Date: Sun, 11 Dec 2016 11:43:59 +0100
> Dump and reset doesn't work unless cmpxchg64() is used both from packet
> and control plane paths. This approach is going to be slow though.
> Instead, use a percpu seqcount to fetch counters consistently, then
> subtract bytes and packets in case a reset was requested.
>
> The cpu that running over the reset code is guaranteed to own this stats
> exclusively, we have to turn counters into signed 64bit though so stats
> update on reset don't get wrong on underflow.
>
> This patch is based on original sketch from Eric Dumazet.
>
> Fixes: 43da04a593d8 ("netfilter: nf_tables: atomic dump and reset for
> stateful objects")
> Suggested-by: Eric Dumazet <[email protected]>
> Signed-off-by: Pablo Neira Ayuso <[email protected]>
> ---
> v2: adjust stats on reset on the current cpu, turn 64bit counters into signed.
>
> @David: Please, take this into net-next to help speed up thing, thanks!
Applied.
--
To unsubscribe from this list: send the line "unsubscribe netfilter-devel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html