mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-09-18 23:09:29 +02:00
Merge tag 'perf-urgent-2026-09-13' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
Pull perf events fixes from Ingo Molnar - Fix sched_cb_list corruption on PMU callbacks that invoke list_del() during perf_event_overflow() calls (Thomas Richter) - Fix PEBS pt_regs->flags snapshot data that regressed with the introduction of adaptive PEBS v4 support (Dapeng Mi) - Fix possible drain_pebs() re-entry bug when intel_pmu_drain_pebs_buffer() is called from process context (Dapeng Mi) * tag 'perf-urgent-2026-09-13' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: perf/x86/intel: Prevent drain_pebs() reentry perf/x86/intel: Correct pt_regs->flags update for PEBS path perf/core: Allow list_del during perf_event_overflow()
This commit is contained in:
@@ -3925,13 +3925,13 @@ static void perf_pmu_sched_task(struct task_struct *prev,
|
||||
bool sched_in)
|
||||
{
|
||||
struct perf_cpu_context *cpuctx = this_cpu_ptr(&perf_cpu_context);
|
||||
struct perf_cpu_pmu_context *cpc;
|
||||
struct perf_cpu_pmu_context *cpc, *cpc2;
|
||||
|
||||
/* cpuctx->task_ctx will be handled in perf_event_context_sched_in/out */
|
||||
if (prev == next || cpuctx->task_ctx)
|
||||
return;
|
||||
|
||||
list_for_each_entry(cpc, this_cpu_ptr(&sched_cb_list), sched_cb_entry)
|
||||
list_for_each_entry_safe(cpc, cpc2, this_cpu_ptr(&sched_cb_list), sched_cb_entry)
|
||||
__perf_pmu_sched_task(cpc, sched_in ? next : prev, sched_in);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user