ACK: [SRU C, D/Unstable][PATCH 1/1] netfilter: nf_conncount: don't skip eviction when age is negative
Kleber Souza
kleber.souza at canonical.com
Thu Jan 10 15:35:43 UTC 2019
On 1/10/19 4:45 AM, Mauricio Faria de Oliveira wrote:
> From: Florian Westphal <fw at strlen.de>
>
> BugLink: https://bugs.launchpad.net/bugs/1811094
>
> age is signed integer, so result can be negative when the timestamps
> have a large delta. In this case we want to discard the entry.
>
> Instead of using age >= 2 || age < 0, just make it unsigned.
>
> Fixes: b36e4523d4d56 ("netfilter: nf_conncount: fix garbage collection confirm race")
> Reviewed-by: Shawn Bohrer <sbohrer at cloudflare.com>
> Signed-off-by: Florian Westphal <fw at strlen.de>
> Signed-off-by: Pablo Neira Ayuso <pablo at netfilter.org>
> (cherry picked from commit 4cd273bb91b3001f623f516ec726c49754571b1a)
> Signed-off-by: Mauricio Faria de Oliveira <mfo at canonical.com>
Acked-by: Kleber Sacilotto de Souza <kleber.souza at canonical.com>
> ---
> net/netfilter/nf_conncount.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/net/netfilter/nf_conncount.c b/net/netfilter/nf_conncount.c
> index 510039862aa9..79d1e17a39d8 100644
> --- a/net/netfilter/nf_conncount.c
> +++ b/net/netfilter/nf_conncount.c
> @@ -106,7 +106,7 @@ find_or_evict(struct net *net, struct nf_conncount_tuple *conn)
> const struct nf_conntrack_tuple_hash *found;
> unsigned long a, b;
> int cpu = raw_smp_processor_id();
> - __s32 age;
> + u32 age;
>
> found = nf_conntrack_find_get(net, &conn->zone, &conn->tuple);
> if (found)
More information about the kernel-team
mailing list