Unreproducable kernel panic: page fault FreeBSD 7.2-RELEASE

Dmitry S. Vlasov z1nkum at gmail.com
Tue Sep 29 06:39:04 UTC 2009


Hello,

I have kernel panic with different periodicity (last uptime: 98d6h45m8s, 
before this - have problem every 1-2 weeks)
FreeBSD hostname 7.2-RELEASE FreeBSD 7.2-RELEASE #1: Thu May 28 23:55:04 
MSD 2009     a at hostname:/usr/obj/usr/src/sys/zkernel  i386

I have no experience with kernel debugging, so I do things that on 
http://www.freebsd.org/doc/en/books/developers-handbook/kerneldebug-gdb.html

# kgdb kernel.debug /var/crash/vmcore.0
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 = 0; apic id = 00
fault virtual address   = 0x188
fault code              = supervisor read, page not present
instruction pointer     = 0x20:0xc055c8e4
stack pointer           = 0x28:0xe9495978
frame pointer           = 0x28:0xe9495990
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         = 69953 (ifconfig)
trap number             = 12
panic: page fault
cpuid = 0
Uptime: 98d6h45m8s
kernel trap 12 with interrupts disabled


Fatal trap 12: page fault while in kernel mode
cpuid = 0; apic id = 00
fault virtual address   = 0x790
fault code              = supervisor read, page not present
instruction pointer     = 0x20:0xc057ca5b
stack pointer           = 0x28:0xe9495284
frame pointer           = 0x28:0xe94952a0
code segment            = base 0x0, limit 0xfffff, type 0x1b
                        = DPL 0, pres 1, def32 1, gran 1
processor eflags        = resume, IOPL = 0
current process         = 69953 (ifconfig)
trap number             = 12
panic: page fault
cpuid = 0
Uptime: 98d6h45m8s
kernel trap 12 with interrupts disabled


Fatal trap 12: page fault while in kernel mode
cpuid = 0; apic id = 00
fault virtual address   = 0x790
fault code              = supervisor read, page not present
instruction pointer     = 0x20:0xc057ca5b
stack pointer           = 0x28:0xe9494bd0
frame pointer           = 0x28:0xe9494bec
code segment            = base 0x0, limit 0xfffff, type 0x1b
                        = DPL 0, pres 1, def32 1, gran 1
processor eflags        = resume, IOPL = 0
current process         = 69953 (ifconfig)
trap number             = 12
panic: page fault
cpuid = 0
Uptime: 98d6h45m8s
kernel trap 12 with interrupts disabled


Fatal trap 12: page fault while in kernel mode
cpuid = 0; apic id = 00
fault virtual address   = 0x790
fault code              = supervisor read, page not present
instruction pointer     = 0x20:0xc057ca5b
stack pointer           = 0x28:0xe949451c
frame pointer           = 0x28:0xe9494538
code segment            = base 0x0, limit 0xfffff, type 0x1b
                        = DPL 0, pres 1, def32 1, gran 1
processor eflags        = resume, IOPL = 0
current process         = 69953 (ifconfig)
trap number             = 12
panic: page fault
cpuid = 0
Uptime: 98d6h45m8s

Fatal double fault:
eip = 0xc04b5bd3
esp = 0xe9493f7c
ebp = 0xe9494020
cpuid = 0; apic id = 00
panic: double fault
cpuid = 0
Uptime: 98d6h45m8s
(da0:isp0:0:1:2): Synchronize cache failed, status == 0xb, scsi status 
== 0x0
Physical memory: 3569 MB
Dumping 309 MB: 294 278 262 246 230 214 198 182 166 150 134 118 102 86 
70 54 38 22 6

Reading symbols from /boot/kernel/acpi.ko...Reading symbols from 
/boot/kernel/acpi.ko.symbols...done.
done.
Loaded symbols for /boot/kernel/acpi.ko
Reading symbols from /boot/kernel/daemon_saver.ko...Reading symbols from 
/boot/kernel/daemon_saver.ko.symbols...done.
done.
Loaded symbols for /boot/kernel/daemon_saver.ko
#0  doadump () at pcpu.h:196
196             __asm __volatile("movl %%fs:0,%0" : "=r" (td));

#(kgdb) list *0xc055c8e4
0xc055c8e4 is in _mtx_lock_sleep (/usr/src/sys/kern/kern_mutex.c:341).
336                      */
337                     v = m->mtx_lock;
338                     if (v != MTX_UNOWNED) {
339                             owner = (struct thread *)(v & 
~MTX_FLAGMASK);
340     #ifdef ADAPTIVE_GIANT
341                             if (TD_IS_RUNNING(owner)) {
342     #else
343                             if (m != &Giant && TD_IS_RUNNING(owner)) {
344     #endif
345                                     if 
(LOCK_LOG_TEST(&m->lock_object, 0))



(kgdb) list *0xc057ca5b
0xc057ca5b is in untimeout (/usr/src/sys/kern/kern_timeout.c:379).
374              */
375             if (handle.callout == NULL)
376                     return;
377
378             mtx_lock_spin(&callout_lock);
379             if (handle.callout->c_func == ftn && 
handle.callout->c_arg == arg)
380                     callout_stop(handle.callout);
381             mtx_unlock_spin(&callout_lock);
382     }
383


(kgdb) backtrace
#0  doadump () at pcpu.h:196
#1  0xc056a457 in boot (howto=260) at /usr/src/sys/kern/kern_shutdown.c:418
#2  0xc056a729 in panic (fmt=Variable "fmt" is not available.
) at /usr/src/sys/kern/kern_shutdown.c:574
#3  0xc072a6bb in dblfault_handler () at /usr/src/sys/i386/i386/trap.c:972
#4  0xc04b5bd3 in isp_start (xs=0xe9494124) at 
/usr/src/sys/dev/isp/isp.c:4022
#5  0xc04c378b in isp_action (sim=0xc6d6ce80, ccb=0xe9494124)
    at /usr/src/sys/dev/isp/isp_freebsd.c:2377
#6  0xc043d464 in xpt_run_dev_sendq (bus=0xc6da8780) at 
/usr/src/sys/cam/cam_xpt.c:3894
#7  0xc043d835 in xpt_action (start_ccb=0xe9494124) at 
/usr/src/sys/cam/cam_xpt.c:3056
#8  0xc0440c10 in xpt_polled_action (start_ccb=0xe9494124) at 
/usr/src/sys/cam/cam_xpt.c:3606
#9  0xc044649f in dashutdown (arg=0x0, howto=260) at 
/usr/src/sys/cam/scsi/scsi_da.c:2051
#10 0xc056a397 in boot (howto=260) at /usr/src/sys/kern/kern_shutdown.c:412
#11 0xc056a729 in panic (fmt=Variable "fmt" is not available.
) at /usr/src/sys/kern/kern_shutdown.c:574
#12 0xc072a9ac in trap_fatal (frame=0xe94944dc, eva=1936) at 
/usr/src/sys/i386/i386/trap.c:939
#13 0xc072b30f in trap (frame=0xe94944dc) at 
/usr/src/sys/i386/i386/trap.c:320
#14 0xc071077b in calltrap () at /usr/src/sys/i386/i386/exception.s:159
#15 0xc057ca5b in untimeout (ftn=0xc04c2990 <isp_watchdog>, 
arg=0xe94947d8, handle=
      {callout = 0x780}) at /usr/src/sys/kern/kern_timeout.c:379
#16 0xc04c227c in isp_done (sccb=0xe94947d8) at 
/usr/src/sys/dev/isp/isp_freebsd.c:3007
#17 0xc04bcb82 in isp_intr (isp=0xc6d32a00, isr=32787, sema=0, mbox=0)
    at /usr/src/sys/dev/isp/isp.c:5086
#18 0xc04c4240 in isp_poll (sim=0xc6d6ce80) at 
/usr/src/sys/dev/isp/isp_freebsd.c:1927
#19 0xc0440c26 in xpt_polled_action (start_ccb=0xe94947d8) at 
/usr/src/sys/cam/cam_xpt.c:3608
#20 0xc044649f in dashutdown (arg=0x0, howto=260) at 
/usr/src/sys/cam/scsi/scsi_da.c:2051
#21 0xc056a397 in boot (howto=260) at /usr/src/sys/kern/kern_shutdown.c:412
#22 0xc056a729 in panic (fmt=Variable "fmt" is not available.
) at /usr/src/sys/kern/kern_shutdown.c:574
#23 0xc072a9ac in trap_fatal (frame=0xe9494b90, eva=1936) at 
/usr/src/sys/i386/i386/trap.c:939
#24 0xc072b30f in trap (frame=0xe9494b90) at 
/usr/src/sys/i386/i386/trap.c:320
#25 0xc071077b in calltrap () at /usr/src/sys/i386/i386/exception.s:159
#26 0xc057ca5b in untimeout (ftn=0xc04c2990 <isp_watchdog>, 
arg=0xe9494e8c, handle=
      {callout = 0x780}) at /usr/src/sys/kern/kern_timeout.c:379
#27 0xc04c227c in isp_done (sccb=0xe9494e8c) at 
/usr/src/sys/dev/isp/isp_freebsd.c:3007
#28 0xc04bcb82 in isp_intr (isp=0xc6d32a00, isr=32787, sema=0, mbox=0)
    at /usr/src/sys/dev/isp/isp.c:5086
#29 0xc04c4240 in isp_poll (sim=0xc6d6ce80) at 
/usr/src/sys/dev/isp/isp_freebsd.c:1927
#30 0xc0440c26 in xpt_polled_action (start_ccb=0xe9494e8c) at 
/usr/src/sys/cam/cam_xpt.c:3608
#31 0xc044649f in dashutdown (arg=0x0, howto=260) at 
/usr/src/sys/cam/scsi/scsi_da.c:2051
#32 0xc056a397 in boot (howto=260) at /usr/src/sys/kern/kern_shutdown.c:412
#33 0xc056a729 in panic (fmt=Variable "fmt" is not available.
) at /usr/src/sys/kern/kern_shutdown.c:574
---Type <return> to continue, or q <return> to quit---
#34 0xc072a9ac in trap_fatal (frame=0xe9495244, eva=1936) at 
/usr/src/sys/i386/i386/trap.c:939
#35 0xc072b30f in trap (frame=0xe9495244) at 
/usr/src/sys/i386/i386/trap.c:320
#36 0xc071077b in calltrap () at /usr/src/sys/i386/i386/exception.s:159
#37 0xc057ca5b in untimeout (ftn=0xc04c2990 <isp_watchdog>, 
arg=0xe9495540, handle=
      {callout = 0x780}) at /usr/src/sys/kern/kern_timeout.c:379
#38 0xc04c227c in isp_done (sccb=0xe9495540) at 
/usr/src/sys/dev/isp/isp_freebsd.c:3007
#39 0xc04bcb82 in isp_intr (isp=0xc6d32a00, isr=32787, sema=0, mbox=0)
    at /usr/src/sys/dev/isp/isp.c:5086
#40 0xc04c4240 in isp_poll (sim=0xc6d6ce80) at 
/usr/src/sys/dev/isp/isp_freebsd.c:1927
#41 0xc0440c26 in xpt_polled_action (start_ccb=0xe9495540) at 
/usr/src/sys/cam/cam_xpt.c:3608
#42 0xc044649f in dashutdown (arg=0x0, howto=260) at 
/usr/src/sys/cam/scsi/scsi_da.c:2051
#43 0xc056a397 in boot (howto=260) at /usr/src/sys/kern/kern_shutdown.c:412
#44 0xc056a729 in panic (fmt=Variable "fmt" is not available.
) at /usr/src/sys/kern/kern_shutdown.c:574
#45 0xc072a9ac in trap_fatal (frame=0xe9495938, eva=392) at 
/usr/src/sys/i386/i386/trap.c:939
#46 0xc072ac10 in trap_pfault (frame=0xe9495938, usermode=0, eva=392)
    at /usr/src/sys/i386/i386/trap.c:852
#47 0xc072b592 in trap (frame=0xe9495938) at 
/usr/src/sys/i386/i386/trap.c:530
#48 0xc071077b in calltrap () at /usr/src/sys/i386/i386/exception.s:159
#49 0xc055c8e4 in _mtx_lock_sleep (m=0xca54767c, tid=3352077408, opts=0, 
file=0x0, line=0)
    at /usr/src/sys/kern/kern_mutex.c:339
#50 0xc0614772 in rtrequest1_fib (req=1, info=0xe9495aa0, 
ret_nrt=0xe9495ad0, fibnum=0)
    at /usr/src/sys/net/route.c:1045
#51 0xc0617173 in rtinit (ifa=0xca547600, cmd=1, flags=5) at 
/usr/src/sys/net/route.c:1479
#52 0xc061d0f6 in in_ifscrub (ifp=0xc7265c00, ia=0xc835b900) at 
/usr/src/sys/netinet/in.c:922
#53 0xc06365c9 in rip_ctlinput (cmd=0, sa=0xc835b9b8, vip=0x0) at 
/usr/src/sys/netinet/raw_ip.c:613
#54 0xc05ba1fb in pfctlinput (cmd=0, sa=0xc835b9b8) at 
/usr/src/sys/kern/uipc_domain.c:429
#55 0xc0601b17 in if_down (ifp=0xc7265c00) at /usr/src/sys/net/if.c:1438
#56 0xc0601ed5 in ifhwioctl (cmd=2149607696, ifp=0xc7265c00, 
data=0xc747dd00 "tun30",
    td=0xc7cca460) at /usr/src/sys/net/if.c:1697
#57 0xc060321d in ifioctl (so=0xc7899b60, cmd=2149607696, 
data=0xc747dd00 "tun30", td=0xc7cca460)
    at /usr/src/sys/net/if.c:2009
#58 0xc05aa2aa in soo_ioctl (fp=0xc77cb6d4, cmd=2149607696, data=0xc747dd00,
    active_cred=0xc6c5b300, td=0xc7cca460) at 
/usr/src/sys/kern/sys_socket.c:191
#59 0xc05a3065 in kern_ioctl (td=0xc7cca460, fd=3, com=2149607696, 
data=0xc747dd00 "tun30")
    at file.h:269
#60 0xc05a31c4 in ioctl (td=0xc7cca460, uap=0xe9495cfc) at 
/usr/src/sys/kern/sys_generic.c:571
#61 0xc072af65 in syscall (frame=0xe9495d38) at 
/usr/src/sys/i386/i386/trap.c:1090
#62 0xc07107e0 in Xint0x80_syscall () at 
/usr/src/sys/i386/i386/exception.s:255
#63 0x00000033 in ?? ()
Previous frame inner to this frame (corrupt stack?)


Please, help me to fix it




More information about the freebsd-bugs mailing list