Re: [BUG] list corruption while enabling multi call uprobes via perf

From: Masami Hiramatsu
Date: Thu Jan 09 2020 - 04:34:06 EST


Hi,

On Thu, 9 Jan 2020 11:10:56 +0900
Masami Hiramatsu <mhiramat@xxxxxxxxxx> wrote:

> Hmm, this seems that the event->hw.tp_list is not initialized when removing
> from the list in uprobe_perf_close().

Oops, that's wrong. Of course my patch can ease (avoid kernel panic) the
issue, but not fixing the root cause.
The root cause is that the uprobe event tries to open multiple probes with
one perf_event. So the perf_event is reused on different probes.

In the reported case, if we remove the multiple probe event before perf-stat,
no problem happens.

I'll try to fix it.

Thank you,

--
Masami Hiramatsu <mhiramat@xxxxxxxxxx>