Re: [PATCH] hwmon: (coretemp) Fix handling of isolated SMT siblings

From: Guenter Roeck

Date: Mon Oct 19 2026 - 08:46:41 EST


On Fri, Oct 16, 2026 at 12:36:37PM +0400, Ximing Zhang wrote:
> From: Ximing Zhang <xzhangjr@xxxxxxxxx>
>
> Commit 0f8b916bc5b5 ("hwmon: (coretemp) avoid RDMSR interrupts to
> isolated CPUs") prevents create_core_data() from creating temperature
> data for an isolated CPU. coretemp_cpu_online(), however, still adds
> that CPU to pdata->cpumask.
>
> When an isolated SMT thread is processed before a housekeeping sibling,
> the mask makes coretemp_cpu_online() believe that the core is already
> represented. The housekeeping sibling then gets no temperature
> attributes. Package attributes are similarly not retried when the first
> CPU processed in a die is isolated.
>
> The mask is also used to select a replacement CPU when a sensor target
> goes offline. Including isolated CPUs permits the driver to retarget a
> sensor to one, causing subsequent sysfs reads to send an RDMSR IPI to an
> isolated CPU.
>
> Keep isolated CPUs out of pdata->cpumask by moving the housekeeping check
> to coretemp_cpu_online(). Sensor creation is then deferred to an eligible
> CPU, and hotplug replacement targets remain on housekeeping CPUs.
>
> Tested on an Intel Core i7-10510U running 6.18.50-3-cachyos-lts, with
> nohz_full=1 on CPU 1 and its housekeeping SMT sibling on CPU 5. The stock
> driver omitted Core 1 after module load and retained its readable sensor
> after CPU 5 was offlined. The patched driver exposed Core 1, removed it
> when CPU 5 went offline, and restored it when CPU 5 returned.
>
> Fixes: 0f8b916bc5b5 ("hwmon: (coretemp) avoid RDMSR interrupts to isolated CPUs")
> Cc: stable@xxxxxxxxxxxxxxx
> Cc: Marcelo Tosatti <mtosatti@xxxxxxxxxx>
> Signed-off-by: Ximing Zhang <xzhangjr@xxxxxxxxx>
> Tested-by: Asaf Nuri Bertizlioğlu <ycistak@xxxxxxxxx>

Applied.

Thanks,
Guenter