atom feed15 messages in org.freebsd.freebsd-smpBoot error SMP
FromSent OnAttachments
Hans van LeestJun 26, 2005 3:40 pm 
John BaldwinJun 27, 2005 6:26 pm 
Hans van LeestJun 27, 2005 7:58 pm 
John BaldwinJun 27, 2005 8:13 pm 
Hans van LeestJun 27, 2005 8:36 pm 
John BaldwinJun 27, 2005 9:33 pm 
Hans van LeestJun 28, 2005 3:45 pm 
John BaldwinJun 28, 2005 6:15 pm 
Hans van LeestJun 29, 2005 5:51 pm 
John BaldwinJun 29, 2005 6:30 pm 
Hans van LeestJun 29, 2005 7:11 pm 
Hans van LeestJun 29, 2005 7:40 pm 
John BaldwinJun 30, 2005 5:21 pm 
Hans van LeestJun 30, 2005 11:03 pm 
John BaldwinJul 1, 2005 12:35 pm 
Subject:Boot error SMP
From:John Baldwin (jh@FreeBSD.org)
Date:Jun 30, 2005 5:21:45 pm
List:org.freebsd.freebsd-smp

On Wednesday 29 June 2005 03:41 pm, Hans van Leest wrote:

i think something strange is going on. I booted four times on the SMP kernel, and 4 times I had a different error I don't thing that's oke, when a kernel crashes. boot1: fatal process exeption; page fault; fault VA=0x0 instruction pointer boot 2: 0xc07e8fd6 instruction pointer boot 3: 0xc0687a9c instruction pointer boot 4: 0xc05ee318

a gdb> list from the last one gave: No symbol table is loaded. Use the "file" command.

Are you sure the RAM and CPUs are ok? Have you tried running memtest on it?

Hans van Leest wrote:

I proberbly didn't uderstand you correct. I did the following. Booted from SMP_DEBUG kernel and it crashed. Secondly I booted from a working kernel and #cd /usr/obj/usr/src/sys/SMP_DEBUG #gdb /usr/obj/usr/src/sys/SMP_DEBUG gdb> list *0xc061a5e7

It gave this back:

(gdb) list *0xc061a5e7 0xc061a5e7 is in free (uma_int.h:388). 383 { 384 vm_page_t p; 385 uma_slab_t slab; 386 387 p = PHYS_TO_VM_PAGE(pmap_kextract(va)); 388 slab = (uma_slab_t )p->object; 389 390 if (p->flags & PG_SLAB) 391 return (slab); 392 else (gdb)

John Baldwin wrote:

On Wednesday 29 June 2005 01:52 pm, Hans van Leest wrote:

I got a boot with the new debug kernel, only I got an new instruction pointer. this one is: 0x8:0xc061a5e7 When I type db> gdb, it replies that it can't find the backend When I type tr after db> I get a lot of data so I want to use serial console So I don't have to type it over. Only I get errors

From the howto I did this

cat /etc/ttys --snip-- # The 'dialup' keyword identifies dialin lines to login, fingerd etc. ttyd0 "/usr/libexec/getty std.9600" vt100 on secure ttyd1 "/usr/libexec/getty std.9600" vt100 on secure ttyd2 "/usr/libexec/getty std.9600" vt100 on secure ttyd3 "/usr/libexec/getty std.9600" vt100 on secure

These only let you login over the serial line, you don't need this for the kernel console.

bsd# cat /boot/loader.conf set console="comconsole"

This should be all you need.

I got error like this: bsd init: can't exec getty 'none' for port /dev/console: No such file or directory

You must have something weird on the 'console' line in /etc/ttys. Normally the getty on that line should be 'off'. The way to grab the output is to use cut and paste or script(1) or some such on the machine that you are talking to the bsd box with, you don't capture the trace info on the bsd machine itself. For example, if you are using some Windows terminal app, you can cut and paste the trace info into notepad and then cut and paste that into an e-mail. If you are using another unix box without X11 as the client end of the console you could use script(1) to log the output to a file.

That said, having the instruction pointer is good. To use that, boot the bsd box, find the kernel.debug from the kernel you built (probably /usr/obj/usr/src/sys/<KERNEL_NAME>/kernel.debug) and run gdb on it like so:

# gdb /path/to/kernel.debug

Then, at the gdb> prompt do a list:

gdb> list *0xc061a5e7