Date: Wed, 29 Dec 2004 17:15:51 -0500 From: John Baldwin <jhb@FreeBSD.org> To: Pawel Worach <pawel.worach@telia.com> Cc: freebsd-current@FreeBSD.org Subject: Re: page fault panic in device_get_softc/acpi_pcib_route_interrupt Message-ID: <200412291715.51125.jhb@FreeBSD.org> In-Reply-To: <41D1ED23.6060207@telia.com> References: <20587818.1102626838092.JavaMail.tomcat@pne-ps4-sn1> <200412281539.38333.jhb@FreeBSD.org> <41D1ED23.6060207@telia.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Tuesday 28 December 2004 06:32 pm, Pawel Worach wrote: > 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. No, I'm fairly sure I know what the search would find. :) Nate, I think the problem here is that his link device doesn't have an associated device_t yet when he gets to this point. Can we force ACPI to enumerate all its devices and assign the associated device_t's via the GetData/SetData stuff before we actually probe any of the children, or do we do that already? > 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 -- John Baldwin <jhb@FreeBSD.org> <>< http://www.FreeBSD.org/~jhb/ "Power Users Use the Power to Serve" = http://www.FreeBSD.org
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200412291715.51125.jhb>