From owner-freebsd-bugs@FreeBSD.ORG Fri Oct 3 21:30:07 2008 Return-Path: Delivered-To: freebsd-bugs@hub.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id D31DE1065696 for ; Fri, 3 Oct 2008 21:30:07 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:4f8:fff6::28]) by mx1.freebsd.org (Postfix) with ESMTP id C0DB68FC17 for ; Fri, 3 Oct 2008 21:30:07 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (gnats@localhost [127.0.0.1]) by freefall.freebsd.org (8.14.2/8.14.2) with ESMTP id m93LU7ws018805 for ; Fri, 3 Oct 2008 21:30:07 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.2/8.14.1/Submit) id m93LU7xF018802; Fri, 3 Oct 2008 21:30:07 GMT (envelope-from gnats) Date: Fri, 3 Oct 2008 21:30:07 GMT Message-Id: <200810032130.m93LU7xF018802@freefall.freebsd.org> To: freebsd-bugs@FreeBSD.org From: Wouter Snels Cc: Subject: Re: kern/127699: [panic] Fatal trap 12: page fault while in kernel mode X-BeenThere: freebsd-bugs@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Wouter Snels List-Id: Bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 03 Oct 2008 21:30:08 -0000 The following reply was made to PR kern/127699; it has been noted by GNATS. From: Wouter Snels To: Volker Werth , bug-followup@freebsd.org Cc: Subject: Re: kern/127699: [panic] Fatal trap 12: page fault while in kernel mode Date: Fri, 03 Oct 2008 23:19:23 +0200 kgdb /boot/kernel/kernel /var/crash/vmcore.3 [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". bt Unread portion of the kernel message buffer: Fatal trap 12: page fault while in kernel mode cpuid = 3; apic id = 02 fault virtual address = 0x4c fault code = supervisor read, page not present instruction pointer = 0x20:0xc577373d stack pointer = 0x28:0xe8edd808 frame pointer = 0x28:0xe8edd84c 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 = 7569 (irssi) trap number = 12 panic: page fault cpuid = 3 Uptime: 14h39m53s Physical memory: 2035 MB Dumping 182 MB: 167 151 135 119 103 87 71 55 39 23 7 #0 doadump () at pcpu.h:195 195 pcpu.h: No such file or directory. in pcpu.h (kgdb) bt #0 doadump () at pcpu.h:195 #1 0xc0754507 in boot (howto=260) at /usr/src/sys/kern/kern_shutdown.c:409 #2 0xc07547c9 in panic (fmt=Variable "fmt" is not available. ) at /usr/src/sys/kern/kern_shutdown.c:563 #3 0xc0a5632c in trap_fatal (frame=0xe8edd7c8, eva=76) at /usr/src/sys/i386/i386/trap.c:899 #4 0xc0a56590 in trap_pfault (frame=0xe8edd7c8, usermode=0, eva=76) at /usr/src/sys/i386/i386/trap.c:812 #5 0xc0a56f12 in trap (frame=0xe8edd7c8) at /usr/src/sys/i386/i386/trap.c:490 #6 0xc0a3d88b in calltrap () at /usr/src/sys/i386/i386/exception.s:139 #7 0xc577373d in ?? () Previous frame inner to this frame (corrupt stack?) (kgdb) Volker Werth schreef: > On 10/02/08 00:07, Wouter Snels wrote: > >> First, want to thank you for your respond. There arn't any additional >> modules/patches installed, .. >> >> kldstat >> Id Refs Address Size Name >> 1 4 0xc0400000 91d344 kernel >> 2 1 0xc0d1e000 6a32c acpi.ko >> 3 1 0xc5772000 3000 if_stf.ko >> >> I included make.conf because I thought it might be useful. >> >> I'm not exactly sure what mean by, world and kernel being sync'ed, I >> compiled according to the freebsd manual, .. >> >> I followed exactly those steps: >> http://www.freebsd.org/doc/en/books/handbook/makeworld.html >> >> # cd /usr/src/sys/i386/conf >> # config OFL >> # cd ../compile/OFL >> # make -j9 cleandepend >> # make -j9 depend >> # cd /usr/src >> # make -j9 buildworld >> # make -j9 buildkernel >> # make -j9 installkernel >> # reboot >> # mergemaster -p >> # make -j9 installworld >> # mergemaster >> # reboot >> >> >> Can you tell me how to do a kernel backtrace, I've done a quick search >> on google but couldn't really find any information on how to do this. Or >> give me a link to a page which explains it. >> >> Regards, WS >> > > Wouter, > > sorry for the delay (I think I didn't already answer back, did I?). > > First, a short explanation about your kernel build process. You can > combine all your painful commands into a simple one (as clean, > cleandepend and others are automagically executed): > > # cd /usr/src ; make buildworld buildkernel KERNCONF=OFL > > and after successful build: > > # make installkernel && nextboot -o "-s" -k kernel > (now it's booting into single user mode) > # cd /usr/src ; make installworld && mergemaster > > Don't forget to do: # cd /usr/src && make check-old > and probably a ``make delete-old'' as check-old may or may not suggest. > > Anyway, now to your problem. > > If your kernel panics, it will (if well configured) write a kernel core > dump into swapspace. On the next reboot, the system executes ``savecore > -C'' to check for a core dump in swapspace and will save it into > /var/crash(/vmcore.N). > > If that goes well, you can inspect that dump using ``kgdb'': > > # kgdb /boot/kernel/kernel /var/crash/vmcore.N (N=latest written core dump) > > When kgdb comes up, issue a ''bt'' command at the (kgdb) prompt. Please > send me the output (best is to include bug-followup@freebsd.org in CC so > we have that information attached to the PR). > > If you need to know anything else, please let me know. > > Regards > > Volker >