[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20221123221730.GK4001@paulmck-ThinkPad-P17-Gen-1>
Date: Wed, 23 Nov 2022 14:17:30 -0800
From: "Paul E. McKenney" <paulmck@...nel.org>
To: Frederic Weisbecker <frederic@...nel.org>
Cc: Pengfei Xu <pengfei.xu@...el.com>,
Lai Jiangshan <jiangshanlai@...il.com>,
Neeraj Upadhyay <quic_neeraju@...cinc.com>,
Christian Brauner <brauner@...nel.org>,
"Eric W. Biederman" <ebiederm@...ssion.com>,
linux-kernel@...r.kernel.org, heng.su@...el.com,
rcu@...r.kernel.org
Subject: Re: PID_NS unshare VS synchronize_rcu_tasks() (was: Re: [Syzkaller &
bisect] There is task hung in "synchronize_rcu" in v6.1-rc5 kernel)
On Wed, Nov 23, 2022 at 11:06:48PM +0100, Frederic Weisbecker wrote:
> On Wed, Nov 23, 2022 at 11:45:50PM +0800, Pengfei Xu wrote:
> > On 2022-11-23 at 15:37:58 +0100, Frederic Weisbecker wrote:
> > > I have no idea how to solve the situation without violating the pid_namespace
> > > rules and unshare() semantics (although I wish unshare(CLONE_NEWPID) had a less
> > > error prone behaviour with allowing creating more than one task belonging to the
> > > same namespace).
> > >
> > > So probably having an SRCU read side critical section within exit_notify() is
> > > not a good idea, is there a solution to work around that for rcu tasks?
> > >
> > Thanks for the analysis!
> > Add one more information: I tried to revert this commit only on top of
> > v6.1-rc5 mainline by script, but it caused kernel make to fail, it could not
> > confirm the bisect information is 100% accurate if I could not pass the
> > revert step verification. I just provide all the information I could.
>
> No problem, I managed to reproduce with latest upstream.
> I don't think the bisected commit is the culprit though, it may perhaps just make
> the issue more likely to happen.
Frederic, Boqun, Neeraj, and I dug through this earlier today, and
record of our wanderings may be found here:
https://docs.google.com/document/d/1hJxgiZ5TMZ4YJkdJPLAkRvq7sYQ-A7svgA8no6i-v8k/edit?usp=sharing
It looks like we can break the deadlock within RCU Tasks, but it also
looks like the namespace-PID semantics are at best an accident waiting
to happen. ;-)
Thanx, Paul
> Thanks.
>
> >
> > And this issue is too difficult to me.
> > If I find more clue, I will update the eamil.
> >
> > Thanks!
> > BR.
> >
> > > Thanks.
Powered by blists - more mailing lists