From: Greg Kroah-Hartman Date: Mon, 24 Oct 2022 08:41:23 +0000 (+0200) Subject: 6.0-stable patches X-Git-Tag: v6.0.4~22 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=24313b7310ff8bb01411a0ef9058568adaa472b9;p=thirdparty%2Fkernel%2Fstable-queue.git 6.0-stable patches added patches: thermal-intel_powerclamp-use-first-online-cpu-as-control_cpu.patch --- diff --git a/queue-6.0/series b/queue-6.0/series index c0339719a01..8ea6de17c92 100644 --- a/queue-6.0/series +++ b/queue-6.0/series @@ -1,3 +1,4 @@ drm-i915-bios-validate-fp_timing-terminator-presence.patch drm-i915-bios-use-hardcoded-fp_timing-size-for-generating-lfp-data-pointers.patch pinctrl-amd-change-dev_warn-to-dev_dbg-for-additional-feature-support.patch +thermal-intel_powerclamp-use-first-online-cpu-as-control_cpu.patch diff --git a/queue-6.0/thermal-intel_powerclamp-use-first-online-cpu-as-control_cpu.patch b/queue-6.0/thermal-intel_powerclamp-use-first-online-cpu-as-control_cpu.patch new file mode 100644 index 00000000000..9922259d053 --- /dev/null +++ b/queue-6.0/thermal-intel_powerclamp-use-first-online-cpu-as-control_cpu.patch @@ -0,0 +1,44 @@ +From 4bb7f6c2781e46fc5bd00475a66df2ea30ef330d Mon Sep 17 00:00:00 2001 +From: "Rafael J. Wysocki" +Date: Thu, 13 Oct 2022 14:50:28 +0200 +Subject: thermal: intel_powerclamp: Use first online CPU as control_cpu + +From: Rafael J. Wysocki + +commit 4bb7f6c2781e46fc5bd00475a66df2ea30ef330d upstream. + +Commit 68b99e94a4a2 ("thermal: intel_powerclamp: Use get_cpu() instead +of smp_processor_id() to avoid crash") fixed an issue related to using +smp_processor_id() in preemptible context by replacing it with a pair +of get_cpu()/put_cpu(), but what is needed there really is any online +CPU and not necessarily the one currently running the code. Arguably, +getting the one that's running the code in there is confusing. + +For this reason, simply give the control CPU role to the first online +one which automatically will be CPU0 if it is online, so one check +can be dropped from the code for an added benefit. + +Link: https://lore.kernel.org/linux-pm/20221011113646.GA12080@duo.ucw.cz/ +Fixes: 68b99e94a4a2 ("thermal: intel_powerclamp: Use get_cpu() instead of smp_processor_id() to avoid crash") +Signed-off-by: Rafael J. Wysocki +Reviewed-by: Chen Yu +Signed-off-by: Greg Kroah-Hartman +--- + drivers/thermal/intel/intel_powerclamp.c | 6 +----- + 1 file changed, 1 insertion(+), 5 deletions(-) + +--- a/drivers/thermal/intel/intel_powerclamp.c ++++ b/drivers/thermal/intel/intel_powerclamp.c +@@ -531,11 +531,7 @@ static int start_power_clamp(void) + cpus_read_lock(); + + /* prefer BSP */ +- control_cpu = 0; +- if (!cpu_online(control_cpu)) { +- control_cpu = get_cpu(); +- put_cpu(); +- } ++ control_cpu = cpumask_first(cpu_online_mask); + + clamping = true; + schedule_delayed_work(&poll_pkg_cstate_work, 0);