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
_______________________________________________
[email protected] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-smp
To unsubscribe, send any mail to "[EMAIL PROTECTED]"