Hi All, For a while now (July 12 first noticed) I've been experiencing a intermittent panic on a non-recursive lock. Whilst I can grab the panic, savecore panics again writing it. It seems to occur only under heavy disk io and hence a make install of XFree86 causes the condition (not always at the same place). Details below: This always occurs sometime before the panic: lock order reversal 1st 0xc907c1fc process lock @ ../../../vm/vm_glue.c:469 2nd 0xc0b4cfb0 lockmgr interlock @ ../../../kern/kern_lock.c:239 Then sometime later (beware, hand transcribed)... recursed on non-recursive lock (sleep mutex) process lock @ ../../../kern_lock:262 first acquired @ ../../../kern/kern_exit.c:327 panic: recurse Debugger("panic") Stopped at Debugger+0x45: pushl %ebx db>trace Debugger(c040a27b) at Debugger+0x45 panic(c040cf28,0,c04ad7fc,c907bca0,0) at panic 0x70 witness_lock(c907bdbc,8,c04087b4,106) at witness_lock+0x356 lockmgr(c04ad7fc,1,0,c907bca0,c90ced88) at lockmgr+0x200 vm_map_lock_read(c04ad7cc,1,c907bca0,c04ad7cc,c027f001) at vm_map_lock_read+01a vm_map_lookup(c90cee04,c9122000,1,c90cee08,c90cedfc) at vm_map_lookup+0x5f vm_fault1(c04ad7cc,c9122000,1,0,0) at vm_fault1+0x90 vm_fault(c04ad7cc,c9122000,1,0,0) at vm_fault+0x96 trap_pfault(c90ceee0,0,c91222ac) at trap_pfault+0x2d1 trap(c0400018,10,c9070010,c907bca0,c90cdd18) at trap+0x774 calltrap() at tcalltrap+0x5 --- trap 0xc, eip = 0xc024aac2, esp = 0xc90cef20, ebp=0xc90cef40 exit1(c907bca0,0,c90cefa0,c03b35a9,c907bca0) at exit1+0x1006 sys_exit(c907bca0,c90cef80,ffffffff,0,80bc608) at sys_exit+0x15 syscall(80b002f,812002f,bfbf002f,80bc608,0) at syscall+0x695 syscall_with_err_pushed() at syscall_with_err_pushed+01b --- syscall ( 1, FreeBSD Elf, sys_exit), eip=0x8093f54, esp=0xbfbfd0e0, ebp=0xbfbfd10c db>show locks exclusive( sleep mutex ) lockmgr ( 0xc0480700 ) locked @ ../../../kern/kern_lock.c:239 exclusive( sleep mutex ) process lock ( 0xc907bdbc ) locked @ ../../../kern/kern_exit.c:327 exclusive ( sx ) proctree (0xc04be5e0) locked @ ../../../kernl/kern_exit.c:282 exclusive (sleep mutex) Giant ( 0xc04c4400) locked @ ../../../vm/vm_fault.c:195 Other useful stuff (tired of transcribing): Fatal trap 12: page fault while in kernel mode fault code = supervisor read, page not present current process = 5756 (ld) If this is not enough to help diagnose the problem, what else can I provide (sadly I can't give symbols as this fault occured compiling the kernel :( The machine is a Dell Inspiron 8000 laptop (dmesg attached) and the problem is getting more frequent with newer kernels. Cheers, Benjamin
Copyright (c) 1992-2001 The FreeBSD Project. Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994 The Regents of the University of California. All rights reserved. FreeBSD 5.0-CURRENT #0: Thu Jul 26 16:39:37 CST 2001 root@draco:/usr/src/sys/i386/compile/NEWCARD Timecounter "i8254" frequency 1193182 Hz CPU: Pentium III/Pentium III Xeon/Celeron (698.48-MHz 686-class CPU) Origin = "GenuineIntel" Id = 0x686 Stepping = 6 Features=0x383f9ff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,MMX,FXSR,SSE> real memory = 134127616 (130984K bytes) avail memory = 124493824 (121576K bytes) Preloaded elf kernel "kernel" at 0xc05c5000. Preloaded splash_image_data "/boot/splash.bmp" at 0xc05c509c. Preloaded elf module "snd_maestro3.ko" at 0xc05c50ec. Preloaded elf module "snd_pcm.ko" at 0xc05c5190. Pentium Pro MTRR support enabled WARNING: Driver mistake: destroy_dev on 154/0 Using $PIR table, 10 entries at 0xc00fbc20 acpi0: <DELL CPi R > on motherboard Timecounter "ACPI" frequency 3579545 Hz acpi_timer0: <24-bit timer at 3.579545MHz> port 0x808-0x80b on acpi0 acpi_cpu0: <CPU> on acpi0 acpi_cpu: CLK_VAL field overflows P_CNT register acpi_cpu: CLK_VAL field overlaps THT_EN bit acpi_tz0: <thermal zone> on acpi0 acpi_acad0: <AC adapter> on acpi0 acpi_cmbat0: <Control method Battery> on acpi0 acpi_cmbat1: <Control method Battery> on acpi0 acpi_lid0: <Control Method Lid Switch> on acpi0 acpi_button0: <Power Button> on acpi0 acpi_button1: <Sleep Button> on acpi0 acpi_pcib0: <Host-PCI bridge> on acpi0 pci0: <PCI bus> on acpi_pcib0 pcib1: <PCI-PCI bridge> at device 1.0 on pci0 pci1: <PCI bus> on pcib1 pci1: <display, VGA> at 0.0 (no driver attached) pcib2: <PCI-PCI bridge> at device 30.0 on pci0 pci2: <PCI bus> on pcib2 pcm0: <ESS Technology Maestro3> port 0xdc00-0xdcff mem 0xf6ffe000-0xf6ffffff irq 5 at device 3.0 on pci2 pcib3: <PCI-PCI bridge> at device 6.0 on pci2 pci3: <PCI bus> on pcib3 fxp0: <Intel Pro 10/100B/100+ Ethernet> port 0xecc0-0xecff mem 0xf8e00000-0xf8efffff,0xf8fff000-0xf8ffffff irq 11 at device 4.0 on pci3 fxp0: Ethernet address 00:20:e0:64:53:e7 inphy0: <i82555 10/100 media interface> on miibus0 inphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto pci3: <simple comms> at 8.0 (no driver attached) pccbb0: <TI4451 PCI-CardBus Bridge> irq 11 at device 15.0 on pci2 pcib2: device pccbb0 requested unsupported memory range 0x44000000-0xefffffff (decoding 0xf2000000-0xfbffffff, 0xfff00000-0xfffff) pccbb0: Could not grab register memory device_probe_and_attach: pccbb0 attach returned 12 pccbb0: <TI4451 PCI-CardBus Bridge> irq 11 at device 15.1 on pci2 pcib2: device pccbb0 requested unsupported memory range 0x44000000-0xefffffff (decoding 0xf2000000-0xfbffffff, 0xfff00000-0xfffff) pccbb0: Could not grab register memory device_probe_and_attach: pccbb0 attach returned 12 pci2: <serial bus, FireWire> at 15.2 (no driver attached) isab0: <PCI-ISA bridge> at device 31.0 on pci0 isa0: <ISA bus> on isab0 atapci0: <Intel ICH2 ATA100 controller> port 0xbfa0-0xbfaf at device 31.1 on pci0 ata0: at 0x1f0 irq 14 on atapci0 ata1: at 0x170 irq 15 on atapci0 uhci0: <Intel 82801BA/BAM (ICH2) USB controller USB-A> port 0xbce0-0xbcff irq 11 at device 31.2 on pci0 usb0: <Intel 82801BA/BAM (ICH2) USB controller USB-A> on uhci0 usb0: USB revision 1.0 uhub0: Intel UHCI root hub, class 9/0, rev 1.00/1.00, addr 1 uhub0: 2 ports with 2 removable, self powered ukbd0: NOVATEK USB Keypad, rev 1.00/1.00, addr 2, iclass 3/1 kbd1 at ukbd0 uhid0: NOVATEK USB Keypad, rev 1.00/1.00, addr 2, iclass 3/1 ums0: Microsoft Microsoft IntelliMouse \M-. with IntelliEye, rev 1.10/1.00, addr 3, iclass 3/1 ums0: 3 buttons and Z dir. apm0: <APM BIOS> on motherboard apm0: found APM BIOS v1.2, connected at v1.2 npx0: <math processor> on motherboard npx0: INT 16 interface too many dependant configs too many dependant configs too many dependant configs too many dependant configs orm0: <Option ROM> at iomem 0xc0000-0xcffff on isa0 atkbdc0: <Keyboard controller (i8042)> at port 0x60,0x64 on isa0 atkbd0: <AT Keyboard> flags 0x1 irq 1 on atkbdc0 kbd0 at atkbd0 psm0: <PS/2 Mouse> irq 12 on atkbdc0 psm0: model Generic PS/2 mouse, device ID 0 fdc0: <NEC 72065B or clone> at port 0x3f0-0x3f5,0x3f7 irq 6 drq 2 on isa0 fdc0: FIFO enabled, 8 bytes threshold fd0: <1440-KB 3.5" drive> on fdc0 drive 0 pmtimer0 on isa0 ppc0: <Parallel port> at port 0x378-0x37f irq 7 on isa0 ppc0: SMC-like chipset (ECP/EPP/PS2/NIBBLE) in COMPATIBLE mode ppc0: FIFO with 16/16/8 bytes threshold plip0: <PLIP network interface> on ppbus0 lpt0: <Printer> on ppbus0 lpt0: Interrupt-driven port ppi0: <Parallel I/O> on ppbus0 sc0: <System console> at flags 0x100 on isa0 sc0: VGA <16 virtual consoles, flags=0x300> sio0 at port 0x3f8-0x3ff irq 4 flags 0x10 on isa0 sio0: type 16550A sio1 at port 0x2f8-0x2ff irq 3 on isa0 sio1: type 16550A sn0: ioaddr is 0x300 sn0: test1 failed vga0: <Generic ISA VGA> at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0 unknown: <PNP0F13> can't assign resources unknown: <PNP0303> can't assign resources unknown: <PNP0200> can't assign resources unknown: <PNP0700> can't assign resources unknown: <PNP0501> can't assign resources unknown: <SMCF010> can't assign resources ad0: DMA limited to UDMA33, non-ATA66 compliant cable ad0: 9590MB <HITACHI_DK23BA-10> [19485/16/63] at ata0-master UDMA33 Mounting root from ufs:/dev/ad0s2a WARNING: / was not properly dismounted /usr: mount pending error: blocks 41392 files 35 linprocfs registered IP packet filtering initialized, divert disabled, rule-based forwarding disabled, default to deny, logging disabled /dev/vmmon: Module vmmon: registered with major=200 minor=0 tag=$Name: build-570 $ /dev/vmmon: Module vmmon: initialized fxp0: promiscuous mode enabled vmnet1: promiscuous mode enabled