Subject: Re: boot fails on an asus P6PND
To: Brett Lymn <blymn@baesystems.com.au>
From: Bill Sommerfeld <sommerfeld@orchard.arlington.ma.us>
List: tech-smp
Date: 09/02/2000 08:56:45
> I was inspired by the recent rash of successes to try running
> a mp kernel on my dual ppro asus board. Unfortunately, it drops to
> the debugger just after mounting the root file system. The panic
> message is:
>
> cpu1: cpu0 running
> kernel: page fault trap, code=0
>
>
> a trace gives:
>
> tlbflushg(.....) at tlb_flushg+0x26
> pmap_do_tlb_shootdown at pmap_do_tlb_shootdown+0x74
> i386_ipi_handler(......) at i386_ipi_handler+0x9e
> Xintripi() at Xintripi+0x38
>
> When I tried doing a sync from ddb the machine just hung so I could
> not get a kernel core dump :-(
the core dump/panic/reboot path needs a bit of work in the MP case.
> Is there anything I can try to fix this?
s/fix/diagnose/
The function offsets don't match anything in the kernel I built. In
particular, tlbflushg should be inlined into pmap_do_tlb_shootdown.
tlbflushg is a "global" tlb flush.
things you can do:
- send dmesg for a normal boot (of uniprocessor kernel)
- send kernel config.
- hook up a serial console and capture boot output.
- capture traceback and "show reg" output
- in particular, capture *all* the debugger output... the current cpu
number will show up in the prompt.
also, can you:
gdb netbsd
(gdb) disassemble tlbflushg
(gdb) disassemble pmap_do_tlb_shootdown
(for the test kernel you booted, of course..)
and mail the output to me?
thanks..
- Bill