Subject: Re: ACPI and invalid devices
To: Todd Kover <kovert@omniscient.com>
From: Manuel Bouyer <bouyer@antioche.eu.org>
List: port-amd64
Date: 04/01/2007 22:12:46
On Fri, Mar 30, 2007 at 02:50:08PM -0400, Todd Kover wrote:
> db{0}> trace 
> cpu_Debugger(c097fca3,c0b927b4,c0b927a8,c048c525,e) at netbsd:cpu_Debugger+0x4
> panic(c09555a4,c38c0480,c0b927d8,c0464b1f,c0a9ef82) at netbsd:panic+0x155
> free(c38c0480,c0a4ca00,c0b92858,c051fd1c,c38c0480) at netbsd:free+0x1de
> AcpiOsFree(c38c0480,c0a014a0,2,c3db1f20,c3db1f20) at netbsd:AcpiOsFree+0x1a
> mpacpi_pcibus_cb(c3db1660,2,c3d0f300,0,1000000) at netbsd:mpacpi_pcibus_cb+0xfc
> AcpiNsWalkNamespace(6,c3db1e00,64,1,c051fc20) at netbsd:AcpiNsWalkNamespace+0xde
> 
> AcpiWalkNamespace(6,c3db1e00,64,c051fc20,c3d0f300) at netbsd:AcpiWalkNamespace+0
> x7e
> mpacpi_find_interrupts(c3d0f300,43b8c9,18,c3d0f358,c3d0f300) at netbsd:mpacpi_fi
> nd_interrupts+0x789
> acpi_md_callback(c3d0f300,c076eea0,c3d0f358,c38c0f10,1) at netbsd:acpi_md_callba
> ck+0x67
> acpi_attach(c38a4f80,c3d0f300,c0b92b3c,0,c0b92b3c) at netbsd:acpi_attach+0x176
> config_attach_loc(c38a4f80,c09f5480,0,c0b92b3c,0) at netbsd:config_attach_loc+0x
> 156
> config_found_ia(c38a4f80,c093e296,c0b92b3c,0,c3821f40) at netbsd:config_found_ia
> +0x32
> mainbus_attach(0,c38a4f80,0,c047f6be,c093d799) at netbsd:mainbus_attach+0x1c1
> config_attach_loc(0,c09f3db8,0,0,0) at netbsd:config_attach_loc+0x156
> config_attach(0,c09f3db8,0,0,c0b8f010) at netbsd:config_attach+0x2c
> config_rootfound(c093d799,0,c0b92c28,c0480ebf,c0a020a0) at netbsd:config_rootfou
> nd+0x44    
> cpu_configure(c0a020a0,a,0,0,c0aa44f0) at netbsd:cpu_configure+0x27
> configure(c0aa0d80,1,0,0,ffff) at netbsd:configure+0x2f
> main(fbff,c01002d2,0,0,0) at netbsd:main+0x115

Well, it works fine for me on a pe2950, with both i386 and amd64 GENERIC
kernels. Also, reading the code I have no clues how the double-free
could happen.

-- 
Manuel Bouyer <bouyer@antioche.eu.org>
     NetBSD: 26 ans d'experience feront toujours la difference
--