All of lore.kernel.org
 help / color / mirror / Atom feed
From: kan.liang@linux.intel.com
To: peterz@infradead.org, mingo@redhat.com, namhyung@kernel.org,
	irogers@google.com, mark.rutland@arm.com,
	linux-kernel@vger.kernel.org, linux-perf-users@vger.kernel.org
Cc: eranian@google.com, ctshao@google.com, tmricht@linux.ibm.com,
	leo.yan@arm.com, Kan Liang <kan.liang@linux.intel.com>
Subject: [PATCH V4 03/16] perf/x86/intel: Remove driver-specific throttle support
Date: Tue, 20 May 2025 11:16:31 -0700	[thread overview]
Message-ID: <20250520181644.2673067-4-kan.liang@linux.intel.com> (raw)
In-Reply-To: <20250520181644.2673067-1-kan.liang@linux.intel.com>

From: Kan Liang <kan.liang@linux.intel.com>

The throttle support has been added in the generic code. Remove
the driver-specific throttle support.

Besides the throttle, perf_event_overflow may return true because of
event_limit. It already does an inatomic event disable. The pmu->stop
is not required either.

Signed-off-by: Kan Liang <kan.liang@linux.intel.com>
---
 arch/x86/events/core.c       | 3 +--
 arch/x86/events/intel/core.c | 6 ++----
 arch/x86/events/intel/ds.c   | 7 +++----
 arch/x86/events/intel/knc.c  | 3 +--
 arch/x86/events/intel/p4.c   | 3 +--
 5 files changed, 8 insertions(+), 14 deletions(-)

diff --git a/arch/x86/events/core.c b/arch/x86/events/core.c
index 186e31cd0c14..8a2f73333a50 100644
--- a/arch/x86/events/core.c
+++ b/arch/x86/events/core.c
@@ -1730,8 +1730,7 @@ int x86_pmu_handle_irq(struct pt_regs *regs)
 
 		perf_sample_save_brstack(&data, event, &cpuc->lbr_stack, NULL);
 
-		if (perf_event_overflow(event, &data, regs))
-			x86_pmu_stop(event, 0);
+		perf_event_overflow(event, &data, regs);
 	}
 
 	if (handled)
diff --git a/arch/x86/events/intel/core.c b/arch/x86/events/intel/core.c
index b7562d66c6ea..a8309a67693e 100644
--- a/arch/x86/events/intel/core.c
+++ b/arch/x86/events/intel/core.c
@@ -3138,8 +3138,7 @@ static void x86_pmu_handle_guest_pebs(struct pt_regs *regs,
 			continue;
 
 		perf_sample_data_init(data, 0, event->hw.last_period);
-		if (perf_event_overflow(event, data, regs))
-			x86_pmu_stop(event, 0);
+		perf_event_overflow(event, data, regs);
 
 		/* Inject one fake event is enough. */
 		break;
@@ -3282,8 +3281,7 @@ static int handle_pmi_common(struct pt_regs *regs, u64 status)
 		if (has_branch_stack(event))
 			intel_pmu_lbr_save_brstack(&data, cpuc, event);
 
-		if (perf_event_overflow(event, &data, regs))
-			x86_pmu_stop(event, 0);
+		perf_event_overflow(event, &data, regs);
 	}
 
 	return handled;
diff --git a/arch/x86/events/intel/ds.c b/arch/x86/events/intel/ds.c
index 58c054fa56b5..f8610f7196f0 100644
--- a/arch/x86/events/intel/ds.c
+++ b/arch/x86/events/intel/ds.c
@@ -2368,8 +2368,7 @@ __intel_pmu_pebs_last_event(struct perf_event *event,
 		 * All but the last records are processed.
 		 * The last one is left to be able to call the overflow handler.
 		 */
-		if (perf_event_overflow(event, data, regs))
-			x86_pmu_stop(event, 0);
+		perf_event_overflow(event, data, regs);
 	}
 
 	if (hwc->flags & PERF_X86_EVENT_AUTO_RELOAD) {
@@ -2597,8 +2596,8 @@ static void intel_pmu_drain_pebs_nhm(struct pt_regs *iregs, struct perf_sample_d
 		if (error[bit]) {
 			perf_log_lost_samples(event, error[bit]);
 
-			if (iregs && perf_event_account_interrupt(event))
-				x86_pmu_stop(event, 0);
+			if (iregs)
+				perf_event_account_interrupt(event);
 		}
 
 		if (counts[bit]) {
diff --git a/arch/x86/events/intel/knc.c b/arch/x86/events/intel/knc.c
index 3e8ec049b46d..384589168c1a 100644
--- a/arch/x86/events/intel/knc.c
+++ b/arch/x86/events/intel/knc.c
@@ -254,8 +254,7 @@ static int knc_pmu_handle_irq(struct pt_regs *regs)
 
 		perf_sample_data_init(&data, 0, last_period);
 
-		if (perf_event_overflow(event, &data, regs))
-			x86_pmu_stop(event, 0);
+		perf_event_overflow(event, &data, regs);
 	}
 
 	/*
diff --git a/arch/x86/events/intel/p4.c b/arch/x86/events/intel/p4.c
index c85a9fc44355..126d5ae264cb 100644
--- a/arch/x86/events/intel/p4.c
+++ b/arch/x86/events/intel/p4.c
@@ -1072,8 +1072,7 @@ static int p4_pmu_handle_irq(struct pt_regs *regs)
 			continue;
 
 
-		if (perf_event_overflow(event, &data, regs))
-			x86_pmu_stop(event, 0);
+		perf_event_overflow(event, &data, regs);
 	}
 
 	if (handled)
-- 
2.38.1


  parent reply	other threads:[~2025-05-20 18:17 UTC|newest]

Thread overview: 51+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-05-20 18:16 [PATCH V4 00/16] perf: Fix the throttle logic for group kan.liang
2025-05-20 18:16 ` [PATCH V4 01/16] perf: Fix the throttle logic for a group kan.liang
2025-05-20 22:02   ` Namhyung Kim
2025-05-21 12:16   ` [tip: perf/core] " tip-bot2 for Kan Liang
2025-05-27 16:16   ` [PATCH V4 01/16] " Leo Yan
2025-05-27 19:30     ` Liang, Kan
2025-05-28 10:28       ` Leo Yan
2025-05-28 14:51         ` Liang, Kan
2025-06-02  0:30   ` perf regression. Was: " Alexei Starovoitov
2025-06-02 12:55     ` Liang, Kan
2025-06-02 16:24       ` Alexei Starovoitov
2025-06-02 17:51         ` Liang, Kan
2025-06-02 18:14           ` Alexei Starovoitov
2025-05-20 18:16 ` [PATCH V4 02/16] perf: Only dump the throttle log for the leader kan.liang
2025-05-20 22:02   ` Namhyung Kim
2025-05-21 12:05   ` Peter Zijlstra
2025-05-21 13:55     ` Liang, Kan
2025-05-21 12:16   ` [tip: perf/core] " tip-bot2 for Kan Liang
2025-05-20 18:16 ` kan.liang [this message]
2025-05-21 12:16   ` [tip: perf/core] perf/x86/intel: Remove driver-specific throttle support tip-bot2 for Kan Liang
2025-05-20 18:16 ` [PATCH V4 04/16] perf/x86/amd: " kan.liang
2025-05-21 12:16   ` [tip: perf/core] " tip-bot2 for Kan Liang
2025-05-20 18:16 ` [PATCH V4 05/16] perf/x86/zhaoxin: " kan.liang
2025-05-21 12:16   ` [tip: perf/core] " tip-bot2 for Kan Liang
2025-05-20 18:16 ` [PATCH V4 06/16] powerpc/perf: " kan.liang
2025-05-21 12:16   ` [tip: perf/core] " tip-bot2 for Kan Liang
2025-05-20 18:16 ` [PATCH V4 07/16] s390/perf: " kan.liang
2025-05-21 12:15   ` [tip: perf/core] " tip-bot2 for Kan Liang
2025-07-23  8:06   ` [PATCH V4 07/16] " Sumanth Korikkar
2025-08-06  8:37     ` Sumanth Korikkar
2025-08-06 17:05       ` Liang, Kan
2025-08-11 14:02         ` Sumanth Korikkar
2025-05-20 18:16 ` [PATCH V4 08/16] perf/arm: " kan.liang
2025-05-21 12:15   ` [tip: perf/core] " tip-bot2 for Kan Liang
2025-05-20 18:16 ` [PATCH V4 09/16] perf/apple_m1: " kan.liang
2025-05-21 12:15   ` [tip: perf/core] " tip-bot2 for Kan Liang
2025-05-20 18:16 ` [PATCH V4 10/16] alpha/perf: " kan.liang
2025-05-21 12:15   ` [tip: perf/core] " tip-bot2 for Kan Liang
2025-05-20 18:16 ` [PATCH V4 11/16] arc/perf: " kan.liang
2025-05-20 18:16   ` kan.liang
2025-05-21 12:15   ` [tip: perf/core] " tip-bot2 for Kan Liang
2025-05-20 18:16 ` [PATCH V4 12/16] csky/perf: " kan.liang
2025-05-21 12:15   ` [tip: perf/core] " tip-bot2 for Kan Liang
2025-05-20 18:16 ` [PATCH V4 13/16] loongarch/perf: " kan.liang
2025-05-21 12:15   ` [tip: perf/core] " tip-bot2 for Kan Liang
2025-05-20 18:16 ` [PATCH V4 14/16] sparc/perf: " kan.liang
2025-05-21 12:15   ` [tip: perf/core] " tip-bot2 for Kan Liang
2025-05-20 18:16 ` [PATCH V4 15/16] xtensa/perf: " kan.liang
2025-05-21 12:15   ` [tip: perf/core] " tip-bot2 for Kan Liang
2025-05-20 18:16 ` [PATCH V4 16/16] mips/perf: " kan.liang
2025-05-21 12:15   ` [tip: perf/core] " tip-bot2 for Kan Liang

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20250520181644.2673067-4-kan.liang@linux.intel.com \
    --to=kan.liang@linux.intel.com \
    --cc=ctshao@google.com \
    --cc=eranian@google.com \
    --cc=irogers@google.com \
    --cc=leo.yan@arm.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-perf-users@vger.kernel.org \
    --cc=mark.rutland@arm.com \
    --cc=mingo@redhat.com \
    --cc=namhyung@kernel.org \
    --cc=peterz@infradead.org \
    --cc=tmricht@linux.ibm.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.