From owner-freebsd-current@FreeBSD.ORG Tue Sep 2 06:29:09 2003 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 1CBCA16A4BF for ; Tue, 2 Sep 2003 06:29:09 -0700 (PDT) Received: from bunrab.catwhisker.org (adsl-63-193-123-122.dsl.snfc21.pacbell.net [63.193.123.122]) by mx1.FreeBSD.org (Postfix) with ESMTP id 397E743FDD for ; Tue, 2 Sep 2003 06:29:08 -0700 (PDT) (envelope-from david@catwhisker.org) Received: from bunrab.catwhisker.org (localhost [127.0.0.1]) by bunrab.catwhisker.org (8.12.9/8.12.9) with ESMTP id h82DT7RB009715 for ; Tue, 2 Sep 2003 06:29:07 -0700 (PDT) (envelope-from david@bunrab.catwhisker.org) Received: (from david@localhost) by bunrab.catwhisker.org (8.12.9/8.12.9/Submit) id h82DT7wf009714 for current@freebsd.org; Tue, 2 Sep 2003 06:29:07 -0700 (PDT) Date: Tue, 2 Sep 2003 06:29:07 -0700 (PDT) From: David Wolfskill Message-Id: <200309021329.h82DT7wf009714@bunrab.catwhisker.org> To: current@freebsd.org Subject: Oh, bother! Fatal trap 12: page fault while in kernel mode X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 02 Sep 2003 13:29:09 -0000 Running -CURRENT with sources updated between 0347 - 0356 hrs. PDT (US/Pacific -- 7 hrs. west of GMT at this time of year) yesterday; in the process of building today's -CURRENT. (Had a similar-looking problem yesterday, but I got involved in some other things, and didn't make the time to report it in any useful manner. So I backed off to the previous day's kernel -- which I saved off, in case I might need it again.) I can let this sit for a bit, so if someone wants more specific info, please send a note. The machine is a dual-CPU box (2x886 MHz PIII; a single ATA disk drive); been in service for a couple of years now, but spends a great deal of time turned off (to reduce heat, noise, and electric bills). It's set up to multi-boot: I track -STABLE daily on slice 1; I track -CURRENT daily on slice 4. Thus, it is currently booted from /dev/ad0s4a. Here's a cut/paste from the serial console: Additional TCP options:. Starting inetd. Starting background file system checks in 60 seconds. Tue Sep 2 06:05:00 PDT 2003 FreeBSD/i386 (freebeast.catwhisker.org) (cuaa0) login: Fatal trap 12: page fault while in kernel mode cpuid = 1; lapic.id = 01000000 fault virtual address = 0xdeadc1e6 fault code = supervisor read, page not present instruction pointer = 0x8:0xc03071e2 stack pointer = 0x10:0xd96d5550 frame pointer = 0x10:0xd96d5580 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 = 1177 (collect2) kernel: type 12 trap, code=0 Stopped at getdirtybuf+0x22: cmpl $0,0x108(%ebx) db> tr getdirtybuf(c468783c,0,1,1,d96d55b8) at getdirtybuf+0x22 flush_deplist(c46d0144,1,d96d55b8,d96d55bc,0) at flush_deplist+0x3d flush_inodedep_deps(c4200000,322c0,c428fdb0,124,c03b8903) at flush_inodedep_deps+0x89 softdep_sync_metadata(d96d56f0,0,c03b8903,124,0) at softdep_sync_metadata+0x87 ffs_fsync(d96d56f0,c040d6c0,2b3,c03a6c2a,c040d6c0) at ffs_fsync+0x3b9 ffs_truncate(c428fdb0,400,0,804,c4407100) at ffs_truncate+0x6f9 ufs_direnter(c428fdb0,c47f0490,d96d5908,d96d5c00,0) at ufs_direnter+0x839 ufs_makeinode(8180,c428fdb0,d96d5bec,d96d5c00,180) at ufs_makeinode+0x274 ufs_create(d96d5a70,d96d5b2c,c024b597,d96d5a70,d96d5a6c) at ufs_create+0x39 ufs_vnoperate(d96d5a70,d96d5a6c,2,c04153e0,c43b4130) at ufs_vnoperate+0x18 vn_open_cred(d96d5bd8,d96d5cd8,180,c4407100,3) at vn_open_cred+0x187 vn_open(d96d5bd8,d96d5cd8,180,3,c03a10df) at vn_open+0x30 kern_open(c43b4130,805c120,0,a03,180) at kern_open+0x13a open(c43b4130,d96d5d10,c03c06c7,3eb,3) at open+0x30 syscall(2f,2f,2f,805c120,805c129) at syscall+0x2b3 Xint0x80_syscall() at Xint0x80_syscall+0x1d --- syscall (5, FreeBSD ELF32, open), eip = 0x280cd8cf, esp = 0xbfbff11c, ebp = 0xbfbff1c8 --- db> show pcpu 0 cpuid = 0 curthread = 0xc150e980: pid 33 "pagezero" curpcb = 0xd7173da0 fpcurthread = none idlethread = 0xc1507980: pid 12 "idle: cpu0" currentldt = 0x28 spin locks held: db> show pcpu 1 cpuid = 1 curthread = 0xc43b4130: pid 1177 "collect2" curpcb = 0xd96d5da0 fpcurthread = none idlethread = 0xc1507850: pid 11 "idle: cpu1" currentldt = 0x28 spin locks held: db> panic panic: from debugger cpuid = 1; lapic.id = 01000000 boot() called on cpu#1 Uptime: 7m42s pfs_vncache_unload(): 1 entries remaining Shutting down ACPI panic: absolutely cannot call smp_ipi_shootdown with interrupts already disabled cpuid = 1; lapic.id = 01000000 boot() called on cpu#1 Uptime: 7m42s kernel trap 12 with interrupts disabled Fatal trap 12: page fault while in kernel mode cpuid = 1; lapic.id = 01000000 fault virtual address = 0xdeadc0e2 fault code = supervisor write, page not present instruction pointer = 0x8:0xc0202855 stack pointer = 0x10:0xd96d4f28 frame pointer = 0x10:0xd96d4f40 code segment = base 0x0, limit 0xfffff, type 0x1b = DPL 0, pres 1, def32 1, gran 1 processor eflags = resume, IOPL = 0 current process = 1177 (collect2) kernel: type 12 trap, code=0 Stopped at eventhandler_deregister+0x45: movl %eax,0x4(%edx) db> As noted, I'll leave it in this state for a bit, in case anyone wants me to extract some more information from it; it doesn't look as if getting a crash dump is going to happen (and apparently I wouldn't be able to save it even if I got one). Thanks.... Peace, david -- David H. Wolfskill david@catwhisker.org If you want true virus-protection for your PC, install a non-Microsoft OS on it. Plausible candidates include FreeBSD, Linux, NetBSD, OpenBSD, and Solaris (in alphabetical order).