Re: page fault panic in device_get_softc/acpi_pcib_route_interrupt

From: Pawel Worach <pawel.worach_at_telia.com>
Date: Wed, 29 Dec 2004 00:32:51 +0100
John Baldwin wrote:
> Are you still seeing this?

Yes I am, updated boot -v with debug.rman_debug=1 below.
Sources are from 16:00 UTC today. Last working kernel I
have is from November 20, I can start a binary search if
you want.

OK set debug.rman_debug=1
OK boot -v
/boot/kernel/acpi.ko text=0x488ac data=0x1ea4+0x110c syms=[0x4+0x7320+0x4+0x9889]
GDB: no debug ports present
KDB: debugger backends: ddb
KDB: current backend: ddb
SMAP type=01 base=0000000000000000 len=000000000009d400
SMAP type=02 base=000000000009d400 len=0000000000002c00
SMAP type=02 base=00000000000e0000 len=0000000000020000
SMAP type=01 base=0000000000100000 len=000000003fedb300
SMAP type=02 base=000000003ffe0000 len=0000000000020000
SMAP type=03 base=000000003ffdb300 len=0000000000004d00
SMAP type=02 base=00000000fec00000 len=0000000001400000
Copyright (c) 1992-2004 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 6.0-CURRENT #0: Tue Dec 28 23:56:00 CET 2004
     root_at_zero:/usr/obj/usr/src/sys/ZERO
Preloaded elf kernel "/boot/kernel/kernel" at 0xc07f0000.
Preloaded elf module "/boot/kernel/acpi.ko" at 0xc07f016c.
Calibrating clock(s) ... i8254 clock: 1193153 Hz
CLK_USE_I8254_CALIBRATION not specified - using default frequency
Timecounter "i8254" frequency 1193182 Hz quality 0
Calibrating TSC clock ... TSC clock: 2793897432 Hz
CPU: Intel(R) Xeon(TM) CPU 2.80GHz (2793.90-MHz 686-class CPU)
   Origin = "GenuineIntel"  Id = 0xf29  Stepping = 9
 
Features=0xbfebfbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CLFLUSH,DTS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE>
real memory  = 1073590272 (1023 MB)
Physical memory chunk(s):
0x0000000000001000 - 0x000000000009cfff, 638976 bytes (156 pages)
0x0000000000100000 - 0x00000000003fffff, 3145728 bytes (768 pages)
0x0000000000828000 - 0x000000003edaafff, 1045966848 bytes (255363 pages)
avail memory = 1046142976 (997 MB)
MP Configuration Table version 1.4 found at 0xc009e2a0
Table 'FACP' at 0x3ffdff00
Table 'APIC' at 0x3ffdfe80
MADT: Found table at 0x3ffdfe80
APIC: Using the MADT enumerator.
MADT: Found CPU APIC ID 0 ACPI ID 0: enabled
SMP: Added CPU 0 (AP)
MADT: Found CPU APIC ID 6 ACPI ID 1: enabled
SMP: Added CPU 6 (AP)
ACPI APIC Table: <IBM    SERONYXP>
APIC ID: physical 0, logical 0:0
APIC ID: physical 6, logical 0:1
FreeBSD/SMP: Multiprocessor System Detected: 2 CPUs
  cpu0 (BSP): APIC ID:  0
  cpu1 (AP): APIC ID:  6
bios32: Found BIOS32 Service Directory header at 0xc00fd790
bios32: Entry = 0xfd7a1 (c00fd7a1)  Rev = 0  Len = 1
pcibios: PCI BIOS entry at 0xf0000+0xd7dc
pnpbios: Found PnP BIOS data at 0xc00fdf90
pnpbios: Entry = f0000:444c  Rev = 1.0
Other BIOS signatures found:
APIC: CPU 0 has ACPI ID 0
APIC: CPU 1 has ACPI ID 1
MADT: Found IO APIC ID 14, Interrupt 0 at 0xfec00000
ioapic0: Routing external 8259A's -> intpin 0
ioapic0: intpin 0 -> ExtINT (edge, high)
ioapic0: intpin 1 -> ISA IRQ 1 (edge, high)
ioapic0: intpin 2 -> ISA IRQ 2 (edge, high)
ioapic0: intpin 3 -> ISA IRQ 3 (edge, high)
ioapic0: intpin 4 -> ISA IRQ 4 (edge, high)
ioapic0: intpin 5 -> ISA IRQ 5 (edge, high)
ioapic0: intpin 6 -> ISA IRQ 6 (edge, high)
ioapic0: intpin 7 -> ISA IRQ 7 (edge, high)
ioapic0: intpin 8 -> ISA IRQ 8 (edge, high)
ioapic0: intpin 9 -> ISA IRQ 9 (edge, high)
ioapic0: intpin 10 -> ISA IRQ 10 (edge, high)
ioapic0: intpin 11 -> ISA IRQ 11 (edge, high)
ioapic0: intpin 12 -> ISA IRQ 12 (edge, high)
ioapic0: intpin 13 -> ISA IRQ 13 (edge, high)
ioapic0: intpin 14 -> ISA IRQ 14 (edge, high)
ioapic0: intpin 15 -> ISA IRQ 15 (edge, high)
MADT: Found IO APIC ID 13, Interrupt 16 at 0xfec01000
ioapic1: intpin 0 -> PCI IRQ 16 (level, low)
ioapic1: intpin 1 -> PCI IRQ 17 (level, low)
ioapic1: intpin 2 -> PCI IRQ 18 (level, low)
ioapic1: intpin 3 -> PCI IRQ 19 (level, low)
ioapic1: intpin 4 -> PCI IRQ 20 (level, low)
ioapic1: intpin 5 -> PCI IRQ 21 (level, low)
ioapic1: intpin 6 -> PCI IRQ 22 (level, low)
ioapic1: intpin 7 -> PCI IRQ 23 (level, low)
ioapic1: intpin 8 -> PCI IRQ 24 (level, low)
ioapic1: intpin 9 -> PCI IRQ 25 (level, low)
ioapic1: intpin 10 -> PCI IRQ 26 (level, low)
ioapic1: intpin 11 -> PCI IRQ 27 (level, low)
ioapic1: intpin 12 -> PCI IRQ 28 (level, low)
ioapic1: intpin 13 -> PCI IRQ 29 (level, low)
ioapic1: intpin 14 -> PCI IRQ 30 (level, low)
ioapic1: intpin 15 -> PCI IRQ 31 (level, low)
MADT: Found IO APIC ID 12, Interrupt 32 at 0xfec02000
ioapic2: intpin 0 -> PCI IRQ 32 (level, low)
ioapic2: intpin 1 -> PCI IRQ 33 (level, low)
ioapic2: intpin 2 -> PCI IRQ 34 (level, low)
ioapic2: intpin 3 -> PCI IRQ 35 (level, low)
ioapic2: intpin 4 -> PCI IRQ 36 (level, low)
ioapic2: intpin 5 -> PCI IRQ 37 (level, low)
ioapic2: intpin 6 -> PCI IRQ 38 (level, low)
ioapic2: intpin 7 -> PCI IRQ 39 (level, low)
ioapic2: intpin 8 -> PCI IRQ 40 (level, low)
ioapic2: intpin 9 -> PCI IRQ 41 (level, low)
ioapic2: intpin 10 -> PCI IRQ 42 (level, low)
ioapic2: intpin 11 -> PCI IRQ 43 (level, low)
ioapic2: intpin 12 -> PCI IRQ 44 (level, low)
ioapic2: intpin 13 -> PCI IRQ 45 (level, low)
ioapic2: intpin 14 -> PCI IRQ 46 (level, low)
ioapic2: intpin 15 -> PCI IRQ 47 (level, low)
MADT: intr override: source 0, irq 2
ioapic0: Routing IRQ 0 -> intpin 2
ioapic0: intpin 2 trigger: edge
ioapic0: intpin 2 polarity: high
lapic0: Routing NMI -> LINT1
MADT: Ignoring local NMI routed to ACPI CPU 6
MADT: Forcing active-low polarity and level trigger for SCI
ioapic0: intpin 3 polarity: low
ioapic0: intpin 3 trigger: level
ioapic2 <Version 1.1> irqs 32-47 on motherboard
ioapic1 <Version 1.1> irqs 16-31 on motherboard
ioapic0 <Version 1.1> irqs 0-15 on motherboard
cpu0 BSP:
      ID: 0x00000000   VER: 0x00050014 LDR: 0x01000000 DFR: 0x0fffffff
   lint0: 0x00010700 lint1: 0x00000400 TPR: 0x00000000 SVR: 0x000001ff
   timer: 0x00010000 therm: 0x00010000 err: 0x00010000 pcm: 0x00010000
io: <I/O>
mem: <memory>
Pentium Pro MTRR support enabled
null: <null device, zero device>
random: <entropy source, Software, Yarrow>
rman_manage_region: <Interrupt request lines> request: start 0, end 0x1
rman_manage_region: <Interrupt request lines> request: start 0x3, end 0x2f
rman_manage_region: <DMA request lines> request: start 0, end 0x7
rman_manage_region: <I/O ports> request: start 0, end 0xffff
rman_manage_region: <I/O memory addresses> request: start 0, end 0xffffffff
rman_reserve_resource: <I/O ports> request: [0xf0, 0xf0], length 0x10, flags 0, 
device npx0
considering [0, 0xffff]
truncated region: [0xf0, 0xff]; size 0x10 (requested 0x10)
candidate region: [0xff, 0xf0], size 0x10
splitting region in three parts: [0, 0xef]; [0xf0, 0xff]; [0x100, 0xffff]
rman_reserve_resource: <Interrupt request lines> request: [0xd, 0xd], length 
0x1, flags 0, device npx0
considering [0x3, 0x2f]
truncated region: [0xd, 0xd]; size 0x1 (requested 0x1)
candidate region: [0xd, 0xd], size 0x1
splitting region in three parts: [0x3, 0xc]; [0xd, 0xd]; [0xe, 0x2f]
npx0: [FAST]
npx0: <math processor> on motherboard
npx0: INT 16 interface
acpi0: <IBM SERONYXP> on motherboard
rman_reserve_resource: <Interrupt request lines> request: [0x3, 0x3], length 
0x1, flags 4, device acpi0
considering [0x3, 0x2f]
truncated region: [0x3, 0x3]; size 0x1 (requested 0x1)
candidate region: [0x3, 0x3], size 0x1
allocating from the beginning
acpi0: [MPSAFE]
pci_open(1):    mode 1 addr port (0x0cf8) is 0x80002800
pci_open(1a):   mode1res=0x80000000 (0x80000000)
pci_cfgcheck:   device 0 [class=060000] [hdr=80] is there (id=00141166)
pcibios: BIOS version 2.10
AcpiOsDerivePciId: bus 0 dev 15 func 2
acpi0: Power Button (fixed)
AcpiOsDerivePciId: bus 0 dev 0 func 0
AcpiOsDerivePciId: bus 0 dev 16 func 0
AcpiOsDerivePciId: bus 0 dev 16 func 2
AcpiOsDerivePciId: bus 0 dev 17 func 0
AcpiOsDerivePciId: bus 0 dev 17 func 2
rman_reserve_resource: <I/O ports> request: [0x92, 0x92], length 0x1, flags 0, 
device acpi0
considering [0, 0xffff]
truncated region: [0x92, 0x92]; size 0x1 (requested 0x1)
candidate region: [0x92, 0x92], size 0x1
splitting region in three parts: [0, 0x91]; [0x92, 0x92]; [0x93, 0xffff]
rman_manage_region: <I/O ports> request: start 0x92, end 0x92
rman_reserve_resource: <I/O ports> request: [0xeb, 0xec], length 0x2, flags 0, 
device acpi0
considering [0x93, 0xffff]
truncated region: [0xeb, 0xec]; size 0x2 (requested 0x2)
candidate region: [0xec, 0xeb], size 0x2
splitting region in three parts: [0x93, 0xea]; [0xeb, 0xec]; [0xed, 0xffff]
rman_manage_region: <I/O ports> request: start 0xeb, end 0xec
rman_reserve_resource: <I/O ports> request: [0x1ec, 0x1ef], length 0x4, flags 0, 
device acpi0
considering [0xed, 0xffff]
truncated region: [0x1ec, 0x1ef]; size 0x4 (requested 0x4)
candidate region: [0x1ef, 0x1ec], size 0x4
splitting region in three parts: [0xed, 0x1eb]; [0x1ec, 0x1ef]; [0x1f0, 0xffff]
rman_manage_region: <I/O ports> request: start 0x1ec, end 0x1ef
rman_reserve_resource: <I/O ports> request: [0x600, 0x600], length 0x1, flags 0, 
device acpi0
considering [0x1f0, 0xffff]
truncated region: [0x600, 0x600]; size 0x1 (requested 0x1)
candidate region: [0x600, 0x600], size 0x1
splitting region in three parts: [0x1f0, 0x5ff]; [0x600, 0x600]; [0x601, 0xffff]
rman_manage_region: <I/O ports> request: start 0x600, end 0x600
rman_reserve_resource: <I/O ports> request: [0x800, 0x80f], length 0x10, flags 
0, device acpi0
considering [0x601, 0xffff]
truncated region: [0x800, 0x80f]; size 0x10 (requested 0x10)
candidate region: [0x80f, 0x800], size 0x10
splitting region in three parts: [0x601, 0x7ff]; [0x800, 0x80f]; [0x810, 0xffff]
rman_manage_region: <I/O ports> request: start 0x800, end 0x80f
rman_reserve_resource: <I/O ports> request: [0xc00, 0xcfe], length 0xff, flags 
0, device acpi0
considering [0x810, 0xffff]
truncated region: [0xc00, 0xcfe]; size 0xff (requested 0xff)
candidate region: [0xcfe, 0xc00], size 0xff
splitting region in three parts: [0x810, 0xbff]; [0xc00, 0xcfe]; [0xcff, 0xffff]
rman_manage_region: <I/O ports> request: start 0xc00, end 0xcfe
rman_reserve_resource: <I/O ports> request: [0xf50, 0xf58], length 0x9, flags 0, 
device acpi0
considering [0xcff, 0xffff]
truncated region: [0xf50, 0xf58]; size 0x9 (requested 0x9)
candidate region: [0xf58, 0xf50], size 0x9
splitting region in three parts: [0xcff, 0xf4f]; [0xf50, 0xf58]; [0xf59, 0xffff]
rman_manage_region: <I/O ports> request: start 0xf50, end 0xf58
rman_reserve_resource: <I/O memory addresses> request: [0xfec00000, 0xffffffff], 
length 0x1400000, flags 0, device acpi0
considering [0, 0xffffffff]
truncated region: [0xfec00000, 0xffffffff]; size 0x1400000 (requested 0x1400000)
candidate region: [0xffffffff, 0xfec00000], size 0x1400000
allocating at the end
rman_manage_region: <I/O memory addresses> request: start 0xfec00000, end 0xffffffff
rman_reserve_resource: <I/O ports> request: [0x510, 0x517], length 0x8, flags 0, 
device acpi0
considering [0x1f0, 0x5ff]
truncated region: [0x510, 0x517]; size 0x8 (requested 0x8)
candidate region: [0x517, 0x510], size 0x8
splitting region in three parts: [0x1f0, 0x50f]; [0x510, 0x517]; [0x518, 0x5ff]
rman_manage_region: <I/O ports> request: start 0x510, end 0x517
rman_reserve_resource: <I/O ports> request: [0x504, 0x507], length 0x4, flags 0, 
device acpi0
considering [0x1f0, 0x50f]
truncated region: [0x504, 0x507]; size 0x4 (requested 0x4)
candidate region: [0x507, 0x504], size 0x4
splitting region in three parts: [0x1f0, 0x503]; [0x504, 0x507]; [0x508, 0x50f]
rman_manage_region: <I/O ports> request: start 0x504, end 0x507
rman_reserve_resource: <I/O ports> request: [0x500, 0x503], length 0x4, flags 0, 
device acpi0
considering [0x1f0, 0x503]
truncated region: [0x500, 0x503]; size 0x4 (requested 0x4)
candidate region: [0x503, 0x500], size 0x4
allocating at the end
rman_manage_region: <I/O ports> request: start 0x500, end 0x503
rman_reserve_resource: <I/O ports> request: [0x400, 0x4fe], length 0xff, flags 
0, device acpi0
considering [0x1f0, 0x4ff]
truncated region: [0x400, 0x4fe]; size 0xff (requested 0xff)
candidate region: [0x4fe, 0x400], size 0xff
splitting region in three parts: [0x1f0, 0x3ff]; [0x400, 0x4fe]; [0x4ff, 0x4ff]
rman_manage_region: <I/O ports> request: start 0x400, end 0x4fe
rman_reserve_resource: <I/O ports> request: [0x460, 0x461], length 0x2, flags 0, 
device acpi0
considering [0x400, 0x4fe]
region is allocated
considering [0x4ff, 0x4ff]
s->r_start (0x4ff) > end (0x461)
no unshared regions found
acpi0: reservation of 460, 2 (4) failed
rman_reserve_resource: <I/O ports> request: [0x2e, 0x2f], length 0x2, flags 0, 
device acpi0
considering [0, 0x91]
truncated region: [0x2e, 0x2f]; size 0x2 (requested 0x2)
candidate region: [0x2f, 0x2e], size 0x2
splitting region in three parts: [0, 0x2d]; [0x2e, 0x2f]; [0x30, 0x91]
rman_manage_region: <I/O ports> request: start 0x2e, end 0x2f
rman_reserve_resource: <I/O ports> request: [0x488, 0x48b], length 0x4, flags 0, 
device acpi_timer0
considering [0x400, 0x4fe]
truncated region: [0x488, 0x48b]; size 0x4 (requested 0x4)
candidate region: [0x48b, 0x488], size 0x4
splitting region in three parts: [0x400, 0x487]; [0x488, 0x48b]; [0x48c, 0x4fe]
ACPI timer: 0/3 0/3 0/3 0/3 0/3 0/3 0/3 0/3 0/3 0/3 -> 0
Timecounter "ACPI-safe" frequency 3579545 Hz quality 1000
acpi_timer0: <32-bit timer at 3.579545MHz> port 0x488-0x48b on acpi0
rman_reserve_resource: <I/O ports> request: [0x488, 0x48b], length 0x4, flags 0, 
device acpi_timer0
considering [0x400, 0x4fe]
truncated region: [0x488, 0x48b]; size 0x4 (requested 0x4)
candidate region: [0x48b, 0x488], size 0x4
splitting region in three parts: [0x400, 0x487]; [0x488, 0x48b]; [0x48c, 0x4fe]
cpu0: <ACPI CPU> on acpi0
cpu1: <ACPI CPU> on acpi0
pcib0: <ACPI Host-PCI bridge> on acpi0
pci0: <ACPI PCI bus> on pcib0
pci0: physical bus=0
found-> vendor=0x1166, dev=0x0014, revid=0x33
         bus=0, slot=0, func=0
         class=06-00-00, hdrtype=0x00, mfdev=1
         cmdreg=0x0000, statreg=0x0000, cachelnsz=16 (dwords)
         lattimer=0x00 (0 ns), mingnt=0x00 (0 ns), maxlat=0x00 (0 ns)
found-> vendor=0x1166, dev=0x0014, revid=0x00
         bus=0, slot=0, func=1
         class=06-00-00, hdrtype=0x00, mfdev=1
         cmdreg=0x0000, statreg=0x0000, cachelnsz=16 (dwords)
         lattimer=0x00 (0 ns), mingnt=0x00 (0 ns), maxlat=0x00 (0 ns)
found-> vendor=0x1166, dev=0x0014, revid=0x00
         bus=0, slot=0, func=2
         class=06-00-00, hdrtype=0x00, mfdev=1
         cmdreg=0x0000, statreg=0x0000, cachelnsz=16 (dwords)
         lattimer=0x00 (0 ns), mingnt=0x00 (0 ns), maxlat=0x00 (0 ns)
         map[10]: type 1, range 32, base fd000000, size 24, enabled
rman_reserve_resource: <I/O memory addresses> request: [0xfd000000, 0xfdffffff], 
length 0x1000000, flags 0, device (null)
considering [0, 0xfebfffff]
truncated region: [0xfd000000, 0xfdffffff]; size 0x1000000 (requested 0x1000000)
candidate region: [0xfdffffff, 0xfd000000], size 0x1000000
splitting region in three parts: [0, 0xfcffffff]; [0xfd000000, 0xfdffffff]; 
[0xfe000000, 0xfebfffff]
         map[14]: type 4, range 32, base 00002400, size  8, enabled
rman_reserve_resource: <I/O ports> request: [0x2400, 0x24ff], length 0x100, 
flags 0, device (null)
considering [0xf59, 0xffff]
truncated region: [0x2400, 0x24ff]; size 0x100 (requested 0x100)
candidate region: [0x24ff, 0x2400], size 0x100
splitting region in three parts: [0xf59, 0x23ff]; [0x2400, 0x24ff]; [0x2500, 0xffff]
         map[18]: type 1, range 32, base febff000, size 12, enabled
rman_reserve_resource: <I/O memory addresses> request: [0xfebff000, 0xfebfffff], 
length 0x1000, flags 0, device (null)
considering [0xfe000000, 0xfebfffff]
truncated region: [0xfebff000, 0xfebfffff]; size 0x1000 (requested 0x1000)
candidate region: [0xfebfffff, 0xfebff000], size 0x1000
allocating at the end
pcib0: matched entry for 0.6.INTA
pcib0: slot 6 INTA hardwired to IRQ 26
found-> vendor=0x1002, dev=0x4752, revid=0x27
         bus=0, slot=6, func=0
         class=03-00-00, hdrtype=0x00, mfdev=0
         cmdreg=0x0087, statreg=0x0290, cachelnsz=8 (dwords)
         lattimer=0x40 (1920 ns), mingnt=0x08 (2000 ns), maxlat=0x00 (0 ns)
         intpin=a, irq=26
         powerspec 2  supports D0 D1 D2 D3  current D0
found-> vendor=0x1166, dev=0x0201, revid=0x93
         bus=0, slot=15, func=0
         class=06-00-00, hdrtype=0x00, mfdev=1
         cmdreg=0x0147, statreg=0x2200, cachelnsz=0 (dwords)
         lattimer=0x40 (1920 ns), mingnt=0x00 (0 ns), maxlat=0x00 (0 ns)
rman_reserve_resource: <I/O ports> request: [0x1f0, 0x1f7], length 0x8, flags 0, 
device (null)
considering [0x1f0, 0x3ff]
truncated region: [0x1f0, 0x1f7]; size 0x8 (requested 0x8)
candidate region: [0x1f7, 0x1f0], size 0x8
allocating from the beginning
rman_reserve_resource: <I/O ports> request: [0x3f6, 0x3f6], length 0x1, flags 0, 
device (null)
considering [0x1f8, 0x3ff]
truncated region: [0x3f6, 0x3f6]; size 0x1 (requested 0x1)
candidate region: [0x3f6, 0x3f6], size 0x1
splitting region in three parts: [0x1f8, 0x3f5]; [0x3f6, 0x3f6]; [0x3f7, 0x3ff]
rman_reserve_resource: <I/O ports> request: [0x170, 0x177], length 0x8, flags 0, 
device (null)
considering [0xed, 0x1eb]
truncated region: [0x170, 0x177]; size 0x8 (requested 0x8)
candidate region: [0x177, 0x170], size 0x8
splitting region in three parts: [0xed, 0x16f]; [0x170, 0x177]; [0x178, 0x1eb]
rman_reserve_resource: <I/O ports> request: [0x376, 0x376], length 0x1, flags 0, 
device (null)
considering [0x1f8, 0x3f5]
truncated region: [0x376, 0x376]; size 0x1 (requested 0x1)
candidate region: [0x376, 0x376], size 0x1
splitting region in three parts: [0x1f8, 0x375]; [0x376, 0x376]; [0x377, 0x3f5]
         map[20]: type 4, range 32, base 00000700, size  4, enabled
rman_reserve_resource: <I/O ports> request: [0x700, 0x70f], length 0x10, flags 
0, device (null)
considering [0x601, 0x7ff]
truncated region: [0x700, 0x70f]; size 0x10 (requested 0x10)
candidate region: [0x70f, 0x700], size 0x10
splitting region in three parts: [0x601, 0x6ff]; [0x700, 0x70f]; [0x710, 0x7ff]
found-> vendor=0x1166, dev=0x0212, revid=0x93
         bus=0, slot=15, func=1
         class=01-01-82, hdrtype=0x00, mfdev=1
         cmdreg=0x0155, statreg=0x0200, cachelnsz=8 (dwords)
         lattimer=0x40 (1920 ns), mingnt=0x00 (0 ns), maxlat=0x00 (0 ns)
         map[10]: type 1, range 32, base febfe000, size 12, enabled
rman_reserve_resource: <I/O memory addresses> request: [0xfebfe000, 0xfebfefff], 
length 0x1000, flags 0, device (null)
considering [0xfe000000, 0xfebfefff]
truncated region: [0xfebfe000, 0xfebfefff]; size 0x1000 (requested 0x1000)
candidate region: [0xfebfefff, 0xfebfe000], size 0x1000
allocating at the end
pcib0: matched entry for 0.15.INTA (src \LPUS:0)


Fatal trap 12: page fault while in kernel mode
cpuid = 0; apic id = 00
fault virtual address   = 0x48
fault code              = supervisor read, page not present
instruction pointer     = 0x8:0xc051edc7
stack pointer           = 0x10:0xc082095c
frame pointer           = 0x10:0xc0820970
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         = 0 (swapper)
[thread pid 0 tid 0 ]
Stopped at      device_get_softc+0x7:   movl    0x48(%eax),%eax
db> trace
Tracing pid 0 tid 0 td 0xc06ef1e0
device_get_softc(c07dd4a0,c07d894d,355,c1e841c0,c1e841c0) at device_get_softc+0x7
acpi_pci_link_route_interrupt(0,0,c0820a28,f,41) at 
acpi_pci_link_route_interrupt+0x3a
acpi_pcib_route_interrupt(c1f16d00,c1f8b780,1,c1f7e214,1) at 
acpi_pcib_route_interrupt+0x33c
acpi_pcib_acpi_route_interrupt(c1f16d00,c1f8b780,1,c06c7850,c1f8b808) at 
acpi_pcib_acpi_route_interrupt+0x2f
pci_assign_interrupt_method(c1f16a00,c1f8b780,f,2,24) at 
pci_assign_interrupt_method+0x71
pci_add_child(c1f16a00,c1f8b800,f,2,80) at pci_add_child+0x207
pci_add_children(c1f16a00,0,80,c0820b54,c05211cf) at pci_add_children+0x123
acpi_pci_attach(c1f16a00,c1f4484c,c06c0e3c,c06aa034,0) at acpi_pci_attach+0x86
device_attach(c1f16a00,c1ed5d80,c0820bdc,c07c435c,c1f16d00) at device_attach+0x2c9
bus_generic_attach(c1f16d00,c07d8227,0,c0820bcc,0) at bus_generic_attach+0x18
acpi_pcib_attach(c1f16d00,c1f7e214,0,c0820c04,c07bef67) at acpi_pcib_attach+0xec
acpi_pcib_acpi_attach(c1f16d00,c1f4384c,c06c0e3c,c06aa034,0) at 
acpi_pcib_acpi_attach+0xf9
device_attach(c1f16d00,2f,c0820cbc,c07c1794,c1ed5d80) at device_attach+0x2c9
bus_generic_attach(c1ed5d80,2e,2f,c1f7dc48,2e) at bus_generic_attach+0x18
acpi_attach(c1ed5d80,c1f4604c,c06c0e3c,c06aa034,0) at acpi_attach+0x7b4
device_attach(c1ed5d80,c1f15000,c0820d18,c06799ca,c1f15000) at device_attach+0x2c9
bus_generic_attach(c1f15000,c1f1504c,c0820d54,c0520179,c1f15000) at 
bus_generic_attach+0x18
nexus_attach(c1f15000,c1f3c04c,c06c0e3c,c06aa034,0) at nexus_attach+0x1a
device_attach(c1f15000,c06dd2b0,c0820d78,c0666aa8,c1f15680) at device_attach+0x2c9
root_bus_configure(c1f15680,c06bacbe,0,c0820d98,c04d09c6) at root_bus_configure+0x19
configure(0,0,c1e6f774,81ec00,81e000) at configure+0x28
mi_startup() at mi_startup+0xd6
begin() at begin+0x2c

(gdb) l *device_get_softc+0x7
0xc051edc7 is in device_get_softc (/usr/src/sys/kern/subr_bus.c:1937).
1932     * on the size field of the driver.
1933     */
1934    void *
1935    device_get_softc(device_t dev)
1936    {
1937            return (dev->softc);
1938    }
1939
1940    /**
1941     * _at_brief Set the device's softc field
(gdb) l *acpi_pci_link_route_interrupt+0x3a
0x3602a is in acpi_pci_link_route_interrupt 
(/usr/src/sys/modules/acpi/acpi/../../../dev/acpica/acpi_pci_link.c:855).
850     {
851             struct link *link;
852
853             ACPI_SERIAL_BEGIN(pci_link);
854             link = acpi_pci_link_lookup(dev, index);
855             if (link == NULL)
856                     panic("%s: apparently invalid index %d", __func__, index);
857
858             /*
859              * If this link device is already routed to an interrupt, just 
return
(gdb) l *acpi_pcib_route_interrupt+0x33c
0x327ec is in acpi_pcib_route_interrupt (acpivar.h:208).
203     acpivar.h: No such file or directory.
         in acpivar.h
(gdb) l *acpi_pcib_acpi_route_interrupt+0x2f
0x32daf is in acpi_pcib_acpi_route_interrupt 
(/usr/src/sys/modules/acpi/acpi/../../../dev/acpica/acpi_pcib_acpi.c:303).
298     acpi_pcib_acpi_route_interrupt(device_t pcib, device_t dev, int pin)
299     {
300         struct acpi_hpcib_softc *sc = device_get_softc(pcib);
301
302         return (acpi_pcib_route_interrupt(pcib, dev, pin, &sc->ap_prt));
303     }
304
305     static u_long acpi_host_mem_start = 0x80000000;
306     TUNABLE_ULONG("hw.acpi.host_mem_start", &acpi_host_mem_start);
307


-- 
Pawel
Received on Tue Dec 28 2004 - 22:32:56 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:38:25 UTC