* [GIT PULL] perf/urgent for v6.11-rc7
@ 2024-09-08 9:07 Borislav Petkov
2024-09-08 17:31 ` pr-tracker-bot
0 siblings, 1 reply; 4+ messages in thread
From: Borislav Petkov @ 2024-09-08 9:07 UTC (permalink / raw)
To: Linus Torvalds; +Cc: x86-ml, lkml
Hi Linus,
please pull two urgent perf fixes for v6.11-rc7.
Thx.
---
The following changes since commit 25dfc9e357af8aed1ca79b318a73f2c59c1f0b2b:
perf/x86/intel: Limit the period on Haswell (2024-08-25 16:49:05 +0200)
are available in the Git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip tags/perf_urgent_for_v6.11_rc7
for you to fetch changes up to 2ab9d830262c132ab5db2f571003d80850d56b2a:
perf/aux: Fix AUX buffer serialization (2024-09-04 18:22:56 +0200)
----------------------------------------------------------------
- Fix perf's AUX buffer serialization
- Prevent uninitialized struct members in perf's uprobes handling
----------------------------------------------------------------
Peter Zijlstra (1):
perf/aux: Fix AUX buffer serialization
Sven Schnelle (1):
uprobes: Use kzalloc to allocate xol area
kernel/events/core.c | 18 ++++++++++++------
kernel/events/internal.h | 1 +
kernel/events/ring_buffer.c | 2 ++
kernel/events/uprobes.c | 3 +--
4 files changed, 16 insertions(+), 8 deletions(-)
--
Regards/Gruss,
Boris.
https://people.kernel.org/tglx/notes-about-netiquette
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [GIT PULL] perf/urgent for v6.11-rc7
2024-09-08 9:07 [GIT PULL] perf/urgent for v6.11-rc7 Borislav Petkov
@ 2024-09-08 17:31 ` pr-tracker-bot
0 siblings, 0 replies; 4+ messages in thread
From: pr-tracker-bot @ 2024-09-08 17:31 UTC (permalink / raw)
To: Borislav Petkov; +Cc: Linus Torvalds, x86-ml, lkml
The pull request you sent on Sun, 8 Sep 2024 11:07:59 +0200:
> git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip tags/perf_urgent_for_v6.11_rc7
has been merged into torvalds/linux.git:
https://git.kernel.org/torvalds/c/e20398877b6216023ac311053baf2f50965cbf27
Thank you!
--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/prtracker.html
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [GIT pull] perf/urgent for v6.11-rc7
2024-09-01 11:44 ` [GIT pull] perf/urgent " Thomas Gleixner
@ 2024-09-01 22:04 ` pr-tracker-bot
0 siblings, 0 replies; 4+ messages in thread
From: pr-tracker-bot @ 2024-09-01 22:04 UTC (permalink / raw)
To: Thomas Gleixner; +Cc: Linus Torvalds, linux-kernel, x86
The pull request you sent on Sun, 1 Sep 2024 13:44:02 +0200 (CEST):
> git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git perf-urgent-2024-09-01
has been merged into torvalds/linux.git:
https://git.kernel.org/torvalds/c/3df9427f351a9cb8aee0eea13d185f0d78340a70
Thank you!
--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/prtracker.html
^ permalink raw reply [flat|nested] 4+ messages in thread
* [GIT pull] perf/urgent for v6.11-rc7
2024-09-01 11:43 [GIT pull] irq/urgent " Thomas Gleixner
@ 2024-09-01 11:44 ` Thomas Gleixner
2024-09-01 22:04 ` pr-tracker-bot
0 siblings, 1 reply; 4+ messages in thread
From: Thomas Gleixner @ 2024-09-01 11:44 UTC (permalink / raw)
To: Linus Torvalds; +Cc: linux-kernel, x86
Linus,
please pull the latest perf/urgent branch from:
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git perf-urgent-2024-09-01
up to: 25dfc9e357af: perf/x86/intel: Limit the period on Haswell
A single fix for x86 performance monitoring:
Haswell PMUs suffer from several errata and require to limit the minimal
period for counter events, otherwise they suffer from endless loops in
the PMU interrupt.
Thanks,
tglx
------------------>
Kan Liang (1):
perf/x86/intel: Limit the period on Haswell
arch/x86/events/intel/core.c | 23 +++++++++++++++++++++--
1 file changed, 21 insertions(+), 2 deletions(-)
diff --git a/arch/x86/events/intel/core.c b/arch/x86/events/intel/core.c
index 0c9c2706d4ec..9e519d8a810a 100644
--- a/arch/x86/events/intel/core.c
+++ b/arch/x86/events/intel/core.c
@@ -4589,6 +4589,25 @@ static enum hybrid_cpu_type adl_get_hybrid_cpu_type(void)
return HYBRID_INTEL_CORE;
}
+static inline bool erratum_hsw11(struct perf_event *event)
+{
+ return (event->hw.config & INTEL_ARCH_EVENT_MASK) ==
+ X86_CONFIG(.event=0xc0, .umask=0x01);
+}
+
+/*
+ * The HSW11 requires a period larger than 100 which is the same as the BDM11.
+ * A minimum period of 128 is enforced as well for the INST_RETIRED.ALL.
+ *
+ * The message 'interrupt took too long' can be observed on any counter which
+ * was armed with a period < 32 and two events expired in the same NMI.
+ * A minimum period of 32 is enforced for the rest of the events.
+ */
+static void hsw_limit_period(struct perf_event *event, s64 *left)
+{
+ *left = max(*left, erratum_hsw11(event) ? 128 : 32);
+}
+
/*
* Broadwell:
*
@@ -4606,8 +4625,7 @@ static enum hybrid_cpu_type adl_get_hybrid_cpu_type(void)
*/
static void bdw_limit_period(struct perf_event *event, s64 *left)
{
- if ((event->hw.config & INTEL_ARCH_EVENT_MASK) ==
- X86_CONFIG(.event=0xc0, .umask=0x01)) {
+ if (erratum_hsw11(event)) {
if (*left < 128)
*left = 128;
*left &= ~0x3fULL;
@@ -6766,6 +6784,7 @@ __init int intel_pmu_init(void)
x86_pmu.hw_config = hsw_hw_config;
x86_pmu.get_event_constraints = hsw_get_event_constraints;
+ x86_pmu.limit_period = hsw_limit_period;
x86_pmu.lbr_double_abort = true;
extra_attr = boot_cpu_has(X86_FEATURE_RTM) ?
hsw_format_attr : nhm_format_attr;
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2024-09-08 17:31 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-09-08 9:07 [GIT PULL] perf/urgent for v6.11-rc7 Borislav Petkov
2024-09-08 17:31 ` pr-tracker-bot
-- strict thread matches above, loose matches on Subject: below --
2024-09-01 11:43 [GIT pull] irq/urgent " Thomas Gleixner
2024-09-01 11:44 ` [GIT pull] perf/urgent " Thomas Gleixner
2024-09-01 22:04 ` pr-tracker-bot
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®