cpu/hotplug: Boot HT siblings at least once
authorThomas Gleixner <tglx@linutronix.de>
Fri, 29 Jun 2018 14:05:48 +0000 (16:05 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 15 Aug 2018 16:12:53 +0000 (18:12 +0200)
commit7f2229c92b9ea4d4b1b50671b9fe5afadbf0b4f4
tree1b803e0e49f6c99c65363003bfaa97ac9b3ed8aa
parentf3e68ab4e778e575ab9fba10894387d177af510a
cpu/hotplug: Boot HT siblings at least once

commit 0cc3cd21657be04cb0559fe8063f2130493f92cf upstream

Due to the way Machine Check Exceptions work on X86 hyperthreads it's
required to boot up _all_ logical cores at least once in order to set the
CR4.MCE bit.

So instead of ignoring the sibling threads right away, let them boot up
once so they can configure themselves. After they came out of the initial
boot stage check whether its a "secondary" sibling and cancel the operation
which puts the CPU back into offline state.

Reported-by: Dave Hansen <dave.hansen@intel.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Tested-by: Tony Luck <tony.luck@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
kernel/cpu.c