Commit e2948eff authored by Linus Torvalds's avatar Linus Torvalds
Browse files

Merge tag 'perf-urgent-2024-04-07' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

Pull x86 perf fix from Ingo Molnar:
 "Fix a combined PEBS events bug on x86 Intel CPUs"

* tag 'perf-urgent-2024-04-07' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
  perf/x86/intel/ds: Don't clear ->pebs_data_cfg for the last PEBS event
parents f2f80ac8 312be9fc
Loading
Loading
Loading
Loading
+4 −4
Original line number Diff line number Diff line
@@ -1237,11 +1237,11 @@ pebs_update_state(bool needed_cb, struct cpu_hw_events *cpuc,
	struct pmu *pmu = event->pmu;

	/*
	 * Make sure we get updated with the first PEBS
	 * event. It will trigger also during removal, but
	 * that does not hurt:
	 * Make sure we get updated with the first PEBS event.
	 * During removal, ->pebs_data_cfg is still valid for
	 * the last PEBS event. Don't clear it.
	 */
	if (cpuc->n_pebs == 1)
	if ((cpuc->n_pebs == 1) && add)
		cpuc->pebs_data_cfg = PEBS_UPDATE_DS_SW;

	if (needed_cb != pebs_needs_sched_cb(cpuc)) {