[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