Messages in this thread | ![/](/images/icornerl.gif) | | Date | Mon, 29 Mar 2021 13:50:18 +0200 | From | Peter Zijlstra <> | Subject | Re: [PATCH v3 01/11] perf: Rework perf_event_exit_event() |
| |
On Thu, Mar 25, 2021 at 08:10:51PM +0100, Marco Elver wrote:
> and therefore synthesized this fix on top: > > diff --git a/kernel/events/core.c b/kernel/events/core.c > index 57de8d436efd..e77294c7e654 100644 > --- a/kernel/events/core.c > +++ b/kernel/events/core.c > @@ -12400,7 +12400,7 @@ static void sync_child_event(struct perf_event *child_event) > if (child_event->attr.inherit_stat) { > struct task_struct *task = child_event->ctx->task; > > - if (task) > + if (task && task != TASK_TOMBSTONE) > perf_event_read_event(child_event, task); > } > > which fixes the problem. My guess is that the parent and child are both > racing to exit? > > Does that make any sense?
Yes, I think it does. ACK
| ![\](/images/icornerr.gif) |