Re: [PATCH v3 0/2] Move ...mce/therm_throt.c to drivers/thermal/
From: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
Date: 2021-02-01 19:12:25
Also in:
lkml
On Mon, 2021-02-01 at 15:27 +0100, Borislav Petkov wrote:
From: Borislav Petkov <redacted> Hi, I know I already committed those but https://lkml.kernel.org/r/20210201032427.GB12524@xsang-OptiPlex-9020 made me look at the IRQ handler registration. And it does happen per CPU which is particularly daft and unneeded. And it used to do that before that change too, for some unknown reason. So I decided to not have a handler registration but simply call the thermal interrupt handler if all is setup and before that issue the message about the unexpected IRQ. I did test it by sending bogus thermal interrupts before and after registration - see hunk below - and it looks good: [ 0.136608] 0: Sending thermal IRQ [ 0.136760] CPU0: Unexpected LVT thermal interrupt! [ 0.136917] CPU0: Thermal monitoring enabled (TM1) [ 0.137071] 1: Sending thermal IRQ [ 0.043243] 0: Sending thermal IRQ [ 0.043243] 1: Sending thermal IRQ [ 0.043243] 0: Sending thermal IRQ [ 0.043243] 1: Sending thermal IRQ [ 0.043243] 0: Sending thermal IRQ [ 0.043243] 1: Sending thermal IRQ [ 0.043243] 0: Sending thermal IRQ [ 0.043243] 1: Sending thermal IRQ [ 0.043243] 0: Sending thermal IRQ [ 0.043243] 1: Sending thermal IRQ [ 0.149436] thermal_sys: Registered thermal governor 'fair_share' [ 0.149437] thermal_sys: Registered thermal governor 'bang_bang' [ 0.149595] thermal_sys: Registered thermal governor 'step_wise' [ 0.149753] thermal_sys: Registered thermal governor 'user_space' [ 0.445717] ACPI: \_SB_.PR00: _OSC native thermal LVT Acked [ 0.707539] thermal LNXTHERM:00: registered as thermal_zone0 Logic in patch 1 got a bit simplified too.
[...]
Borislav Petkov (2): x86/mce: Get rid of mcheck_intel_therm_init() thermal: Move therm_throt there from x86/mce
I have applied this series and tested. Didn't find any functional issues. But I have one comment on patch 2/2. Tested-by: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com> Thanks, Srinivas
arch/x86/Kconfig | 4 --
arch/x86/include/asm/mce.h | 22 ----------
arch/x86/include/asm/thermal.h | 24 +++++++++++
arch/x86/kernel/cpu/intel.c | 3 ++
arch/x86/kernel/cpu/mce/Makefile | 2 -
arch/x86/kernel/cpu/mce/core.c | 1 -
arch/x86/kernel/cpu/mce/intel.c | 1 -
arch/x86/kernel/irq.c | 21 ++++++++++
drivers/thermal/intel/Kconfig | 4 ++
drivers/thermal/intel/Makefile | 1 +
.../thermal/intel}/therm_throt.c | 41 ++++-------------
--
drivers/thermal/intel/x86_pkg_temp_thermal.c | 3 +-
12 files changed, 64 insertions(+), 63 deletions(-)
create mode 100644 arch/x86/include/asm/thermal.h
rename {arch/x86/kernel/cpu/mce =>
drivers/thermal/intel}/therm_throt.c (96%)
2nd:rc6-therm_throt