Boot error SMP
Hans van Leest
hvleest at signet.nl
Wed Jun 29 19:41:17 GMT 2005
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.
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
>>
>>
>>
>
> _______________________________________________
> freebsd-smp at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-smp
> To unsubscribe, send any mail to "freebsd-smp-unsubscribe at freebsd.org"
>
More information about the freebsd-smp
mailing list