[coreboot] Patch merged into coreboot/master: bf36231 Intel cpus: Fix deadlock on hyper-threading init
gerrit at coreboot.org
gerrit at coreboot.org
Sun Mar 25 20:33:32 CEST 2012
the following patch was just integrated into master:
commit bf362311db9948925b5580a9922a58c4c8726c82
Author: Kyösti Mälkki <kyosti.malkki at gmail.com>
Date: Fri Mar 9 17:02:37 2012 +0200
Intel cpus: Fix deadlock on hyper-threading init
Only the BSP CPU was able to start its hyper-threading CPU siblings.
When an AP CPU attempts this it calls start_cpu() within start_cpu(),
deadlocking the system with start_cpu_lock.
At the time intel_sibling_init() is run, the BSP CPU is still
walking the cpu_bus linked list in lapic_cpu_init: start_other_cpus().
A sibling CPU appended at the end of this list will get started.
Also fail compile with #error if SERIAL_CPU_INIT==0, as microcode
updates on hyper-threading sibling CPUs must be serialized.
Tested with HT-enabled P4 Xeons on dual-socket604 platform.
Change-Id: I0053f58f49ed604605ce0a55e826d3e1afdc90b6
Signed-off-by: Kyösti Mälkki <kyosti.malkki at gmail.com>
Build-Tested: build bot (Jenkins) at Sat Mar 10 05:41:56 2012, giving +1
Reviewed-By: Rudolf Marek <r.marek at assembler.cz> at Sun Mar 25 20:33:24 2012, giving +2
See http://review.coreboot.org/775 for details.
-gerrit
More information about the coreboot
mailing list