Re: [PATCH v2 24/24] perf: Make perf_pmu_unregister() useable
From: Ravi Bangoria
Date: Thu Feb 13 2025 - 22:57:34 EST
On 13-Feb-25 6:38 PM, Peter Zijlstra wrote:
> On Thu, Feb 13, 2025 at 01:22:55PM +0530, Ravi Bangoria wrote:
>>> Does this work?
>>>
>>> --- a/kernel/events/core.c
>>> +++ b/kernel/events/core.c
>>> @@ -2303,6 +2303,7 @@ static void perf_child_detach(struct per
>>>
>>> sync_child_event(event);
>>> list_del_init(&event->child_list);
>>> + event->parent = NULL;
>>> }
>>>
>>> static bool is_orphaned_event(struct perf_event *event)
>>
>> Apparently not, it ends up with:
>>
>> ------------[ cut here ]------------
>> WARNING: CPU: 145 PID: 5459 at kernel/events/core.c:281 event_function+0xd2/0xf0
>
> Durr, do you have an updated test case?
This one triggered with just perf_fuzzer run (without my tinypmu test).
But in general, to test the whole series, I ran perf_fuzzer simultaneously
with my tinypmu tests:
term1~$ echo -1 | sudo tee /proc/sys/kernel/perf_event_paranoid; while true; do ./perf_fuzzer; done
term2~$ cd ~/tinypmu; make clean; make; while true; do sudo bash tinypmu-u.sh; done
Thanks,
Ravi