From dcf5f15fcc7087f033eb2b12fe8a7ab60bdf0c2b Mon Sep 17 00:00:00 2001 From: Greg Kroah-Hartman Date: Sat, 8 May 2021 18:18:27 +0200 Subject: [PATCH] 5.12-stable patches added patches: tools-power-turbostat-fix-turbostat-for-amd-zen-cpus.patch --- queue-5.12/series | 1 + ...ostat-fix-turbostat-for-amd-zen-cpus.patch | 65 +++++++++++++++++++ 2 files changed, 66 insertions(+) create mode 100644 queue-5.12/tools-power-turbostat-fix-turbostat-for-amd-zen-cpus.patch diff --git a/queue-5.12/series b/queue-5.12/series index bea3ee97599..08df4eefa2a 100644 --- a/queue-5.12/series +++ b/queue-5.12/series @@ -281,3 +281,4 @@ alsa-hda-realtek-fix-mic-boost-on-intel-nuc-8.patch alsa-hda-realtek-headset-mic-issue-on-hp-platform.patch alsa-hda-realtek-fix-static-noise-on-alc285-lenovo-laptops.patch alsa-hda-realtek-add-quirk-for-intel-clevo-pcx0dx.patch +tools-power-turbostat-fix-turbostat-for-amd-zen-cpus.patch diff --git a/queue-5.12/tools-power-turbostat-fix-turbostat-for-amd-zen-cpus.patch b/queue-5.12/tools-power-turbostat-fix-turbostat-for-amd-zen-cpus.patch new file mode 100644 index 00000000000..9feb5127291 --- /dev/null +++ b/queue-5.12/tools-power-turbostat-fix-turbostat-for-amd-zen-cpus.patch @@ -0,0 +1,65 @@ +From 301b1d3a9104f4f3a8ab4171cf88d0f55d632b41 Mon Sep 17 00:00:00 2001 +From: Bas Nieuwenhuizen +Date: Wed, 28 Apr 2021 17:09:03 +0800 +Subject: tools/power/turbostat: Fix turbostat for AMD Zen CPUs + +From: Bas Nieuwenhuizen + +commit 301b1d3a9104f4f3a8ab4171cf88d0f55d632b41 upstream. + +It was reported that on Zen+ system turbostat started exiting, +which was tracked down to the MSR_PKG_ENERGY_STAT read failing because +offset_to_idx wasn't returning a non-negative index. + +This patch combined the modification from Bingsong Si and +Bas Nieuwenhuizen and addd the MSR to the index system as alternative for +MSR_PKG_ENERGY_STATUS. + +Fixes: 9972d5d84d76 ("tools/power turbostat: Enable accumulate RAPL display") +Reported-by: youling257 +Tested-by: youling257 +Tested-by: Kurt Garloff +Tested-by: Bingsong Si +Tested-by: Artem S. Tashkinov +Co-developed-by: Bingsong Si +Co-developed-by: Terry Bowman +Signed-off-by: Bas Nieuwenhuizen +Reviewed-by: Chen Yu +Signed-off-by: Len Brown +Cc: Salvatore Bonaccorso +Signed-off-by: Greg Kroah-Hartman +--- + tools/power/x86/turbostat/turbostat.c | 8 ++++++-- + 1 file changed, 6 insertions(+), 2 deletions(-) + +--- a/tools/power/x86/turbostat/turbostat.c ++++ b/tools/power/x86/turbostat/turbostat.c +@@ -297,7 +297,10 @@ int idx_to_offset(int idx) + + switch (idx) { + case IDX_PKG_ENERGY: +- offset = MSR_PKG_ENERGY_STATUS; ++ if (do_rapl & RAPL_AMD_F17H) ++ offset = MSR_PKG_ENERGY_STAT; ++ else ++ offset = MSR_PKG_ENERGY_STATUS; + break; + case IDX_DRAM_ENERGY: + offset = MSR_DRAM_ENERGY_STATUS; +@@ -326,6 +329,7 @@ int offset_to_idx(int offset) + + switch (offset) { + case MSR_PKG_ENERGY_STATUS: ++ case MSR_PKG_ENERGY_STAT: + idx = IDX_PKG_ENERGY; + break; + case MSR_DRAM_ENERGY_STATUS: +@@ -353,7 +357,7 @@ int idx_valid(int idx) + { + switch (idx) { + case IDX_PKG_ENERGY: +- return do_rapl & RAPL_PKG; ++ return do_rapl & (RAPL_PKG | RAPL_AMD_F17H); + case IDX_DRAM_ENERGY: + return do_rapl & RAPL_DRAM; + case IDX_PP0_ENERGY: -- 2.47.3