Fatal trap 12 on 7.0-BETA1 i386
Kris Kennaway
kris at FreeBSD.org
Wed Oct 24 16:17:39 PDT 2007
Doug Poland wrote:
> Hello,
>
> I just had a kernel panic using BETA1. According to the Developer
> Handbook Kernel Debugging, I'm supplying the following information in
> hopes that it is useful. Please note: I'm not familiar with this
> process so you need more data, just ask:
>
> kgdb kernel.debug /var/crash/vmcore.0
> [GDB will not be able to debug user-mode threads:
> /usr/lib/libthread_db.so: Undefined symbol "ps_pglobal_lookup"]
> GNU gdb 6.1.1 [FreeBSD]
> Copyright 2004 Free Software Foundation, Inc.
> GDB is free software, covered by the GNU General Public License, and you
> are
> welcome to change it and/or distribute copies of it under certain
> conditions.
> Type "show copying" to see the conditions.
> There is absolutely no warranty for GDB. Type "show warranty" for details.
> This GDB was configured as "i386-marcel-freebsd".
>
> Unread portion of the kernel message buffer:
>
>
> Fatal trap 12: page fault while in kernel mode
> cpuid = 1; apic id = 01
> fault virtual address = 0x9006004
> fault code = supervisor read, page not present
> instruction pointer = 0x20:0xc079c961
> stack pointer = 0x28:0xe74a7bcc
> frame pointer = 0x28:0xe74a7be0
> code segment = base 0x0, limit 0xfffff, type 0x1b
> = DPL 0, pres 1, def32 1, gran 1
> processor eflags = interrupt enabled, resume, IOPL = 0
> current process = 46 (ath0 taskq)
> trap number = 12
> panic: page fault
> cpuid = 1
> Uptime: 4h9m30s
> Physical memory: 3435 MB
> Dumping 214 MB: ...
>
> #0 doadump () at pcpu.h:195
> 195 __asm __volatile("movl %%fs:0,%0" : "=r" (td));
> (kgdb) list *0xc079c961
> 0xc079c961 is in mb_free_ext (/usr/src/sys/kern/uipc_mbuf.c:226).
> 221 * check if the header is embedded in the cluster
> 222 */
> 223 skipmbuf = (m->m_flags & M_NOFREE);
> 224
> 225 /* Free attached storage if this mbuf is the only
> reference to it. */
> 226 if (*(m->m_ext.ref_cnt) == 1 ||
> 227 atomic_fetchadd_int(m->m_ext.ref_cnt, -1) == 1) {
> 228 switch (m->m_ext.ext_type) {
> 229 case EXT_PACKET: /* The packet zone is
> special. */
> 230 if (*(m->m_ext.ref_cnt) == 0)
Almost :)
What does 'bt' show in kgdb?
Kris
More information about the freebsd-stable
mailing list