Re: [PATCH] x86: Fix thermal throttling reporting after kexec

From: Thomas Gleixner
Date: Mon Oct 12 2015 - 16:34:49 EST


On Mon, 12 Oct 2015, Andi Kleen wrote:
> From: Andi Kleen <ak@xxxxxxxxxxxxxxx>
>
> The per CPU thermal vector init code checks if the thermal
> vector is already installed and complains and bails out if
> it is.
>
> This happens after kexec, as kernel shut down does
> not clear the thermal vector APIC register.
>
> This causes two problems:
>
> So we always do not fully initialize thermal reports
> after kexec. The CPU is still likely initialized,
> as the previous kernel should have done it. But
> we don't set up the software pointer to the thermal
> vector, so reporting may end up with a unknown thermal
> interrupt message.
>
> Also it complains for every logical CPU, even though the
> value is actually derived from BP only.
>
> The problem is that we end up with one message per CPU,
> so on larger systems it becomes very noisy and messes up
> the otherwise nicely formatted CPU bootup numbers in
> the kernel log.
>
> Just remove the check. I checked the code and there's
> no valid code paths where the thermal init code for a CPU
> could be called multiple times.
>
> Why the kernel does not clean up this value on shutdown:
>
> The thermal monitoring is controlled per logical CPU thread.
> Normal shutdown code is just running on one CPU.
> To disable it we would need a broadcast NMI to all CPUs
> on shut down. That's overkill for this. So we just
> ignore it after kexec.
>
> v2: Updated commit log to discuss why the value is not
> cleaned up on shutdown.
> Signed-off-by: Andi Kleen <ak@xxxxxxxxxxxxxxx>

Reviewed-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/