[Bug 225450] 11.1-* panics on AMD Opteron 2k due to EARLY_AP_STARTUP

bugzilla-noreply at freebsd.org bugzilla-noreply at freebsd.org
Sun Feb 11 03:11:27 UTC 2018


https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=225450

--- Comment #15 from Pablo Ruiz <pablo.ruiz at gmail.com> ---
And, finally if I move the while(1) just after the mtx_unlock_spin call, like
this:

diff --git a/sys/x86/x86/mp_x86.c b/sys/x86/x86/mp_x86.c
index 1c257d87e58..04975dd8a2e 100644
--- a/sys/x86/x86/mp_x86.c
+++ b/sys/x86/x86/mp_x86.c
@@ -950,9 +950,9 @@ init_secondary_tail(void)
        load_es(_udatasel);
        load_fs(_ufssel);
 #endif
-while(1);

        mtx_unlock_spin(&ap_boot_mtx);
+while(1);

        /* Wait until all the AP's are up. */
        while (atomic_load_acq_int(&smp_started) == 0)

We arrive to the original behaviour of no 'db' prompt, and somewhat garbaged
crash:

[...]
cpu0 BSP:
     ID: 0x00000000   VER: 0x80050010 LDR: 0x00000000 DFR: 0xffffffff
  lint0: 0x00010700 lint1: 0x00000400 TPR: 0x00000000 SVR: 0x000001ff
  timer: 0x000100ef therm: 0x00010000 err: 0x000000f0 pmc: 0x00010400
   AMD ext features: 0x00010003
   AMD elvt0: 0x00010000
SMP: AP CPU #1 Launched!
cpu1 AP:

Fa
Fa

FFa
Fa
Fa
Fa
Fata

.................

I hope this helps.

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the freebsd-bugs mailing list