Fatal trap 12 on 7.0-BETA1 i386
Kris Kennaway
kris at FreeBSD.org
Thu Oct 25 11:11:56 PDT 2007
Doug Poland wrote:
> On Thu, Oct 25, 2007 at 01:17:38AM +0200, Kris Kennaway wrote:
>> 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:
>>>
>>>
>>> snip
>>>
>
>> Almost :)
>>
>> What does 'bt' show in kgdb?
>>
>
> 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: 199 183 167 151 135 119 103 87 71 55 39 23 7
>
> #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)
> (kgdb) backtrace
> #0 doadump () at pcpu.h:195
> #1 0xc074fed7 in boot (howto=260) at /usr/src/sys/kern/kern_shutdown.c:409
> #2 0xc0750199 in panic (fmt=Variable "fmt" is not available.
> ) at /usr/src/sys/kern/kern_shutdown.c:563
> #3 0xc0a1485c in trap_fatal (frame=0xe74a7b8c, eva=151019524) at /usr/src/sys/i386/i386/trap.c:872
> #4 0xc0a14ae0 in trap_pfault (frame=0xe74a7b8c, usermode=0, eva=151019524) at /usr/src/sys/i386/i386/trap.c:785
> #5 0xc0a15455 in trap (frame=0xe74a7b8c) at /usr/src/sys/i386/i386/trap.c:463
> #6 0xc09fb46b in calltrap () at /usr/src/sys/i386/i386/exception.s:139
> #7 0xc079c961 in mb_free_ext (m=0xc7151e00) at /usr/src/sys/kern/uipc_mbuf.c:226
> #8 0xc079cfc1 in m_freem (mb=0x0) at mbuf.h:510
> #9 0xc051e39e in ath_rxbuf_init (sc=0xc6e95000, bf=0xc6e9cc94) at /usr/src/sys/dev/ath/if_ath.c:3257
> #10 0xc052595d in ath_rx_proc (arg=0xc6e95000, npending=1) at /usr/src/sys/dev/ath/if_ath.c:3711
> #11 0xc07809c5 in taskqueue_run (queue=0xc6dd8300) at /usr/src/sys/kern/subr_taskqueue.c:255
> #12 0xc0780bcb in taskqueue_thread_loop (arg=0xc6e96664) at /usr/src/sys/kern/subr_taskqueue.c:374
> #13 0xc07304b9 in fork_exit (callout=0xc0780b10 <taskqueue_thread_loop>, arg=0xc6e96664, frame=0xe74a7d38) at /usr/src/sys/kern/kern_fork.c:796
> #14 0xc09fb4e0 in fork_trampoline () at /usr/src/sys/i386/i386/exception.s:205
> (kgdb)
>
>
> Here's the whole thing with a backtrace. Thanks for your patience...
>
>
I asked Sam about this and he says he has seen it reported before but
not with enough details to track it down further. Can you file a PR and
describe your system network configuration in more detail, including
kernel config, dmesg, rc.conf and other settings, and any firewall rules
that are applied?
Kris
More information about the freebsd-stable
mailing list