Re: [PATCH 0/3] rcu-tasks: Fix race against exiting pid_ns

From: Frederic Weisbecker
Date: Fri Dec 02 2022 - 17:55:42 EST


On Tue, Nov 29, 2022 at 06:48:34AM -0800, Paul E. McKenney wrote:
> On Tue, Nov 29, 2022 at 10:55:00AM +0100, Frederic Weisbecker wrote:
> > On Mon, Nov 28, 2022 at 04:22:40PM -0800, Paul E. McKenney wrote:
> > > On Fri, Nov 25, 2022 at 02:54:57PM +0100, Frederic Weisbecker wrote:
> > > > Pengfei Xu has reported a deadlock involving calls to unshare(),
> > > > perf_event_open() and clone3() calls. It requires CAP_SYS_ADMIN
> > > > to reproduce (at least I don't see a way for a non privilege process to
> > > > reproduce).
> > > >
> > > > See this thread for details: https://lore.kernel.org/all/Y3sOgrOmMQqPMItu@xxxxxxxxxxxxxxxx/
> > > > And this document for the collaborative analysis with Boqun, Paul and Neeraj:
> > > > https://docs.google.com/document/d/1hJxgiZ5TMZ4YJkdJPLAkRvq7sYQ-A7svgA8no6i-v8k
> > > >
> > > > The two first patches are small improvements. The fix is in the last patch.
> > > >
> > > > git://git.kernel.org/pub/scm/linux/kernel/git/frederic/linux-dynticks.git
> > > > rcu/dev
> > > >
> > > > HEAD: 45ef5a0a4be4e0db9eadcc86e8f346d34c62e744
> > >
> > > Hearing no objections, queued for further review and testing.
> > >
> > > And thank you very much! That race between synchronize_rcu_tasks() and
> > > zap_pid_ns_processes() certainly was more than a bit on the non-trivial
> > > side. Good show!!!
> >
> > Thanks!
> >
> > Also please replace the last patch with the following to fix
> > a !CONFIG_RCU_TASKS issue:
>
> Like this? ;-)
>
> a0c355bbdfee ("squash! rcu-tasks: Fix synchronize_rcu_tasks() VS zap_pid_ns_processes()")

You got it! :)