Re: [PATCH] fork.c: copy_process(): fix cleanup WRT perf_event_free_task()

From: Andrew Morton
Date: Wed Oct 01 2014 - 18:45:05 EST


On Mon, 29 Sep 2014 16:00:48 +0200 Peter Zijlstra <peterz@xxxxxxxxxxxxx> wrote:

> On Mon, Sep 29, 2014 at 02:07:22PM +0200, Ingo Molnar wrote:
> >
> > * Peter Zijlstra <peterz@xxxxxxxxxxxxx> wrote:
> >
> > > Subject: perf: Fix perf bug in fork()
> > >
> > > Oleg noticed that a cleanup by Sylvain actually uncovered a bug; by
> > > calling perf_event_free_task() when failing sched_fork() we will not yet
> > > have done the memset() on ->perf_event_ctxp[] and will therefore try and
> > > 'free' the inherited contexts, which are still in use by the parent
> > > process. This is bad..
> > >
> > > Suggested-by: Oleg Nesterov <oleg@xxxxxxxxxx>
> > > Reported-by: Oleg Nesterov <oleg@xxxxxxxxxx>
> > > Reported-by: Sylvain 'ythier' Hitier <sylvain.hitier@xxxxxxxxx>
> > > Signed-off-by: Peter Zijlstra (Intel) <peterz@xxxxxxxxxxxxx>
> >
> > Could this fix a couple of fuzzer triggered perf crashes perhaps?
>
> It could indeed I suppose.. you never know what paths those fuzzers
> manage to hit.

The patch isn't in linux-next and didn't cc stable. I think I'll
squirt it Linuswards later this week unless someone stops me..

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/