lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<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

Powered by Openwall GNU/*/Linux Powered by OpenVZ