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