Re[4]: fatal trap 12
Hello. What options I must add to kernel? Can You tell me what I must do when system crash next time? > On 6/6/09, ge...@dts.su wrote: >> Hello, Freebsd-questions. >> >> After one of new crash I have this: >> >> 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 "amd64-marcel-freebsd"... >> >> Unread portion of the kernel message buffer: >> >> >> Fatal trap 12: page fault while in kernel mode >> cpuid = 2; apic id = 02 >> fault virtual address = 0x0 >> fault code = supervisor read data, page not present >> instruction pointer = 0x8:0x804c4eb8 >> stack pointer = 0x10:0xff807a0478f0 >> frame pointer = 0x10:0xff807a047930 >> code segment= base 0x0, limit 0xf, type 0x1b >> = DPL 0, pres 1, long 1, def32 0, gran 1 >> processor eflags= interrupt enabled, resume, IOPL = 0 >> current process = 32668 (perl5.10.0) >> Physical memory: 4082 MB >> Dumping 1647 MB: 1632 1616 1600 1584 1568 1552 1536 1520 1504 1488 1472 1456 >> 1440 1424 1408 1392 1376 1360 1344 1328 1312 1296 1280 1264 1248 1232 1216 >> 1200 1184 1168 1152 1136 1120 1104 1088 1072 1056 1040 1024 1008 992 976 960 >> 944 928 912 896 880 864 848 832 816 800 784 768 752 736 720 704 688 672 656 >> 640 624 608 592 576 560 544 528 512 496 480 464 448 432 416 400 384 368 352 >> 336 320 304 288 272 256 240 224 208 192 176 160 144 128 112 96 80 64 48 32 >> 16 >> >> Reading symbols from /boot/kernel/accf_http.ko...Reading symbols from >> /boot/kernel/accf_http.ko.symbols...done. >> done. >> Loaded symbols for /boot/kernel/accf_http.ko >> #0 doadump () at pcpu.h:195 >> 195 __asm __volatile("movq %%gs:0,%0" : "=r" (td)); >> (kgdb) list *0x804c4eb8 >> 0x804c4eb8 is in pfs_ioctl >> (/usr/src/sys/fs/pseudofs/pseudofs_vnops.c:265). >> 260 static int >> 261 pfs_ioctl(struct vop_ioctl_args *va) >> 262 { >> 263 struct vnode *vn = va->a_vp; >> 264 struct pfs_vdata *pvd = vn->v_data; >> 265 struct pfs_node *pn = pvd->pvd_pn; >> 266 struct proc *proc; >> 267 int error; >> 268 >> 269 PFS_TRACE(("%s: %lx", pn->pn_name, va->a_command)); >> (kgdb) backtrace >> #0 doadump () at pcpu.h:195 >> #1 0x801c8dac in db_fncall (dummy1=Variable "dummy1" is not >> available. >> ) at /usr/src/sys/ddb/db_command.c:516 >> #2 0x801c92df in db_command (last_cmdp=0x80b30c88, >> cmd_table=0x0, dopager=1) at /usr/src/sys/ddb/db_command.c:413 >> #3 0x801c94f0 in db_command_loop () at >> /usr/src/sys/ddb/db_command.c:466 >> #4 0x801cb0d9 in db_trap (type=Variable "type" is not available. >> ) at /usr/src/sys/ddb/db_main.c:228 >> #5 0x80554e55 in kdb_trap (type=12, code=0, tf=0xff807a047840) >> at /usr/src/sys/kern/subr_kdb.c:524 >> #6 0x807fae80 in trap_fatal (frame=0xff807a047840, eva=Variable >> "eva" is not available. >> ) at /usr/src/sys/amd64/amd64/trap.c:752 >> #7 0x807fb254 in trap_pfault (frame=0xff807a047840, usermode=0) >> at /usr/src/sys/amd64/amd64/trap.c:673 >> #8 0x807fbc02 in trap (frame=0xff807a047840) at >> /usr/src/sys/amd64/amd64/trap.c:444 >> #9 0x807df35e in calltrap () at >> /usr/src/sys/amd64/amd64/exception.S:209 >> #10 0x804c4eb8 in pfs_ioctl (va=0xff807a047a10) at >> /usr/src/sys/fs/pseudofs/pseudofs_vnops.c:264 >> #11 0x805bb1d3 in vn_ioctl (fp=Variable "fp" is not available. >> ) at vnode_if.h:437 >> #12 0x80562d02 in kern_ioctl (td=0xff0006682000, fd=3, >> com=1076655123, data=0xff00ad2b7d40 "") at file.h:269 >> #13 0x80563029 in ioctl (td=0xff0006682000, >> uap=0xff807a047bf0) at /usr/src/sys/kern/sys_generic.c:571 >> #14 0x807fb4d6 in syscall (frame=0xff807a047c80) at >> /usr/src/sys/amd64/amd64/trap.c:900 >> #15 0x807df56b in Xfast_syscall () at >> /usr/src/sys/amd64/amd64/exception.S:330 >> #16 0x000800c9c0ec in ?? () >> Previous frame inner to this frame (corrupt stack?) >> (kgdb) >> >> >> Can You help me? What can I do? Server crash periodicaly... > Add more debug options to kernel, because dump is not useful > with corrupted stack. >>> For this question, you must debug the kernel by Serial. >>> when fatal, you use find the error by command "bt". >> >>> -- >>> Dean >>> 2009-06-02 >> >>> - >>> 发件人:georg >>> 发送日期:2009-06-02 14:51:45 >>> 收件人:freebsd-questions >>> 抄送: >>> 主题:fatal trap 12 >> >>> Hello, Freebsd-questions. >> >>>I use FreeBSD 7.2-STABLE am
Re: Re[4]: fatal trap 12
2009/6/6 > Hello. > > What options I must add to kernel? Can You tell me what I must do when > system crash next time? > > > On 6/6/09, ge...@dts.su wrote: > >> Hello, Freebsd-questions. > >> > >> After one of new crash I have this: > >> > >> 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 "amd64-marcel-freebsd"... > >> > >> Unread portion of the kernel message buffer: > >> > >> > >> Fatal trap 12: page fault while in kernel mode > >> cpuid = 2; apic id = 02 > >> fault virtual address = 0x0 > >> fault code = supervisor read data, page not present > >> instruction pointer = 0x8:0x804c4eb8 > >> stack pointer = 0x10:0xff807a0478f0 > >> frame pointer = 0x10:0xff807a047930 > >> code segment= base 0x0, limit 0xf, type 0x1b > >> = DPL 0, pres 1, long 1, def32 0, gran 1 > >> processor eflags= interrupt enabled, resume, IOPL = 0 > >> current process = 32668 (perl5.10.0) > >> Physical memory: 4082 MB > >> Dumping 1647 MB: 1632 1616 1600 1584 1568 1552 1536 1520 1504 1488 1472 > 1456 > >> 1440 1424 1408 1392 1376 1360 1344 1328 1312 1296 1280 1264 1248 1232 > 1216 > >> 1200 1184 1168 1152 1136 1120 1104 1088 1072 1056 1040 1024 1008 992 976 > 960 > >> 944 928 912 896 880 864 848 832 816 800 784 768 752 736 720 704 688 672 > 656 > >> 640 624 608 592 576 560 544 528 512 496 480 464 448 432 416 400 384 368 > 352 > >> 336 320 304 288 272 256 240 224 208 192 176 160 144 128 112 96 80 64 48 > 32 > >> 16 > >> > >> Reading symbols from /boot/kernel/accf_http.ko...Reading symbols from > >> /boot/kernel/accf_http.ko.symbols...done. > >> done. > >> Loaded symbols for /boot/kernel/accf_http.ko > >> #0 doadump () at pcpu.h:195 > >> 195 __asm __volatile("movq %%gs:0,%0" : "=r" (td)); > >> (kgdb) list *0x804c4eb8 > >> 0x804c4eb8 is in pfs_ioctl > >> (/usr/src/sys/fs/pseudofs/pseudofs_vnops.c:265). > >> 260 static int > >> 261 pfs_ioctl(struct vop_ioctl_args *va) > >> 262 { > >> 263 struct vnode *vn = va->a_vp; > >> 264 struct pfs_vdata *pvd = vn->v_data; > >> 265 struct pfs_node *pn = pvd->pvd_pn; > >> 266 struct proc *proc; > >> 267 int error; > >> 268 > >> 269 PFS_TRACE(("%s: %lx", pn->pn_name, va->a_command)); > >> (kgdb) backtrace > >> #0 doadump () at pcpu.h:195 > >> #1 0x801c8dac in db_fncall (dummy1=Variable "dummy1" is not > >> available. > >> ) at /usr/src/sys/ddb/db_command.c:516 > >> #2 0x801c92df in db_command (last_cmdp=0x80b30c88, > >> cmd_table=0x0, dopager=1) at /usr/src/sys/ddb/db_command.c:413 > >> #3 0x801c94f0 in db_command_loop () at > >> /usr/src/sys/ddb/db_command.c:466 > >> #4 0x801cb0d9 in db_trap (type=Variable "type" is not > available. > >> ) at /usr/src/sys/ddb/db_main.c:228 > >> #5 0x80554e55 in kdb_trap (type=12, code=0, > tf=0xff807a047840) > >> at /usr/src/sys/kern/subr_kdb.c:524 > >> #6 0x807fae80 in trap_fatal (frame=0xff807a047840, > eva=Variable > >> "eva" is not available. > >> ) at /usr/src/sys/amd64/amd64/trap.c:752 > >> #7 0x807fb254 in trap_pfault (frame=0xff807a047840, > usermode=0) > >> at /usr/src/sys/amd64/amd64/trap.c:673 > >> #8 0x807fbc02 in trap (frame=0xff807a047840) at > >> /usr/src/sys/amd64/amd64/trap.c:444 > >> #9 0x807df35e in calltrap () at > >> /usr/src/sys/amd64/amd64/exception.S:209 > >> #10 0x804c4eb8 in pfs_ioctl (va=0xff807a047a10) at > >> /usr/src/sys/fs/pseudofs/pseudofs_vnops.c:264 > >> #11 0x805bb1d3 in vn_ioctl (fp=Variable "fp" is not available. > >> ) at vnode_if.h:437 > >> #12 0x80562d02 in kern_ioctl (td=0xff0006682000, fd=3, > >> com=1076655123, data=0xff00ad2b7d40 "") at file.h:269 > >> #13 0x80563029 in ioctl (td=0xff0006682000, > >> uap=0xff807a047bf0) at /usr/src/sys/kern/sys_generic.c:571 > >> #14 0x807fb4d6 in syscall (frame=0xff807a047c80) at > >> /usr/src/sys/amd64/amd64/trap.c:900 > >> #15 0x807df56b in Xfast_syscall () at > >> /usr/src/sys/amd64/amd64/exception.S:330 > >> #16 0x000800c9c0ec in ?? () > >> Previous frame inner to this frame (corrupt stack?) > >> (kgdb) > >> > >> > >> Can You help me? What can I do? Server crash periodicaly... > > > Add more debug options to kernel, because dump is not useful > > with corrupted stack. > > >>> For this question, you must debug the kernel by Serial. > >>> when fatal, you use find the error by command "bt". > >> > >>> -- > >>> Dean >