-On [20010210 17:30], Jeroen Ruigrok/Asmodai ([EMAIL PROTECTED]) wrote:
>Perhaps only need_resched() needs to be spinlocked. I am not sure, I am
>not a SMP guru.
To add:
It needed to be spinlocked as you saw jake's commit affirmed and fixed.
However I am currently hanging just after lauching the second CPU:
art_init: trying /sched!st
in/init
SMP: CPU1 apic_initialize():
lint0: 0x00010700 lint1: 0x00010400 TPR: 0x00000010 SVR: 0x000001ff
After that the only things I get are:
Generator gate
Generator gate finish
after each couple of seconds.
Going in ddb yields [abbreviated, no serial console]:
ddb> show mutex
Giant @ ../../kern_intr:427
ddb> show witness
spinlocks:
sio @ isa/sio.c:2549
sched_lock @ kern/kern_sync.c:809
clk @ i386/isa/clock.c:406
callout @ kern/kern_timeout.c:283
ithread table @ i386/isa/intr_machdep.c:587
ithread list @ kern/kern_intr.237
ap boot @ i386/i386/mp_machdep.c:2270
imen @ i386/i386/mpapic.c:261
Going out of ddb by panicing resulted in either a direct kernel trap 12
with interrupts disabled or a kernel trap 0 with interrupts disabled
after which another panic led to a kernel trap 12 with interrupts
disabled.
The kernel trap 12 was an infinite loop.
--
Jeroen Ruigrok vd Werven/Asmodai asmodai@[wxs.nl|bart.nl|freebsd.org]
Documentation nutter/C-rated Coder BSD: Technical excellence at its best
D78D D0AD 244D 1D12 C9CA 7152 035C 1138 546A B867
I'm a child of the air, I'm a witch of the wind...
To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message