From: Kajetan Puchalski <kajetan.puchalski@arm.com>
To: Will Deacon <will@kernel.org>
Cc: Florian Westphal <fw@strlen.de>,
Pablo Neira Ayuso <pablo@netfilter.org>,
Jozsef Kadlecsik <kadlec@netfilter.org>,
"David S. Miller" <davem@davemloft.net>,
Eric Dumazet <edumazet@google.com>,
Jakub Kicinski <kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com>,
Mel Gorman <mgorman@suse.de>,
lukasz.luba@arm.com, dietmar.eggemann@arm.com,
mark.rutland@arm.com, broonie@kernel.org,
netfilter-devel@vger.kernel.org, coreteam@netfilter.org,
netdev@vger.kernel.org, stable@vger.kernel.org,
regressions@lists.linux.dev, linux-kernel@vger.kernel.org,
peterz@infradead.org
Subject: Re: [Regression] stress-ng udp-flood causes kernel panic on Ampere Altra
Date: Tue, 5 Jul 2022 16:29:51 +0100 [thread overview]
Message-ID: <YsRY7xx2bPcE/tJL@e126311.manchester.arm.com> (raw)
In-Reply-To: <20220705112449.GA931@willie-the-truck>
> > > Sorry, but I have absolutely no context here. We have a handy document
> > > describing the differences between atomic_t and refcount_t:
> > >
> > > Documentation/core-api/refcount-vs-atomic.rst
> > >
> > > What else do you need to know?
> >
> > Hmm, and I see a tonne of *_inc_not_zero() conversions in 719774377622
> > ("netfilter: conntrack: convert to refcount_t api") which mean that you
> > no longer have ordering to subsequent reads in the absence of an address
> > dependency.
>
> I think the patch above needs auditing with the relaxed behaviour in mind,
> but for the specific crash reported here possibly something like the diff
> below?
>
> Will
>
> --->8
>
> diff --git a/net/netfilter/nf_conntrack_core.c b/net/netfilter/nf_conntrack_core.c
> index 082a2fd8d85b..5ad9fcc84269 100644
> --- a/net/netfilter/nf_conntrack_core.c
> +++ b/net/netfilter/nf_conntrack_core.c
> @@ -1394,6 +1394,7 @@ static unsigned int early_drop_list(struct net *net,
> * already fired or someone else deleted it. Just drop ref
> * and move to next entry.
> */
> + smp_rmb(); /* XXX: Why? */
> if (net_eq(nf_ct_net(tmp), net) &&
> nf_ct_is_confirmed(tmp) &&
> nf_ct_delete(tmp, 0, 0))
>
With this patch applied the issue goes away as well. The test runs fine
well beyond where it would crash previously so looks good, thanks!
next prev parent reply other threads:[~2022-07-05 15:30 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-07-01 11:11 Kajetan Puchalski
2022-07-01 11:42 ` [Regression] stress-ng udp-flood causes kernel panic on Ampere Altra #forregzbot Thorsten Leemhuis
2022-07-01 20:01 ` [Regression] stress-ng udp-flood causes kernel panic on Ampere Altra Florian Westphal
2022-07-02 11:08 ` Kajetan Puchalski
2022-07-02 11:54 ` Willy Tarreau
2022-07-02 20:56 ` Florian Westphal
2022-07-04 9:22 ` Kajetan Puchalski
[not found] ` <YsLGoU7q5hP67TJJ@e126311.manchester.arm.com>
2022-07-05 10:53 ` Kajetan Puchalski
2022-07-05 10:57 ` Will Deacon
2022-07-05 11:07 ` Will Deacon
2022-07-05 11:24 ` Will Deacon
2022-07-05 15:29 ` Kajetan Puchalski [this message]
2022-07-06 10:39 ` Kajetan Puchalski
2022-07-06 12:02 ` Florian Westphal
2022-07-06 12:18 ` Peter Zijlstra
2022-07-06 12:22 ` Will Deacon
2022-07-06 12:40 ` Florian Westphal
2022-07-06 14:50 ` [PATCH nf v3] netfilter: conntrack: fix crash due to confirmed bit load reordering Florian Westphal
2022-07-07 8:19 ` Will Deacon
2022-07-07 18:59 ` Florian Westphal
2022-07-07 10:17 ` Thorsten Leemhuis
2022-07-11 16:34 ` Kajetan Puchalski
2022-07-06 14:00 ` [Regression] stress-ng udp-flood causes kernel panic on Ampere Altra Peter Zijlstra
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=YsRY7xx2bPcE/tJL@e126311.manchester.arm.com \
--to=kajetan.puchalski@arm.com \
--cc=broonie@kernel.org \
--cc=coreteam@netfilter.org \
--cc=davem@davemloft.net \
--cc=dietmar.eggemann@arm.com \
--cc=edumazet@google.com \
--cc=fw@strlen.de \
--cc=kadlec@netfilter.org \
--cc=kuba@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=lukasz.luba@arm.com \
--cc=mark.rutland@arm.com \
--cc=mgorman@suse.de \
--cc=netdev@vger.kernel.org \
--cc=netfilter-devel@vger.kernel.org \
--cc=pabeni@redhat.com \
--cc=pablo@netfilter.org \
--cc=peterz@infradead.org \
--cc=regressions@lists.linux.dev \
--cc=stable@vger.kernel.org \
--cc=will@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®