On Mon, 12 Oct 2015, Andi Kleen wrote: > From: Andi Kleen <[email protected]> > > 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 <[email protected]>
Reviewed-by: Thomas Gleixner <[email protected]> -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/

