From owner-freebsd-current@FreeBSD.ORG Tue Apr 12 17:57:52 2005 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 A455A16A4CE; Tue, 12 Apr 2005 17:57:52 +0000 (GMT) Received: from ylpvm01.prodigy.net (ylpvm01-ext.prodigy.net [207.115.57.32]) by mx1.FreeBSD.org (Postfix) with ESMTP id F1C1E43D39; Tue, 12 Apr 2005 17:57:51 +0000 (GMT) (envelope-from nate@root.org) Received: from [10.0.0.34] (adsl-67-119-74-222.dsl.sntc01.pacbell.net [67.119.74.222])j3CHvn4H032150; Tue, 12 Apr 2005 13:57:50 -0400 Message-ID: <425C0B98.7060605@root.org> Date: Tue, 12 Apr 2005 10:55:36 -0700 From: Nate Lawson User-Agent: Mozilla Thunderbird 1.0RC1 (X11/20041205) X-Accept-Language: en-us, en MIME-Version: 1.0 To: Antoine Brodin References: <200504081529.33026.jhb@FreeBSD.org> <20050409115745.31a0059c.antoine.brodin@laposte.net> <200504112031.26979.jhb@FreeBSD.org> <20050412092732.72c9c87a.antoine.brodin@laposte.net> In-Reply-To: <20050412092732.72c9c87a.antoine.brodin@laposte.net> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit cc: freebsd-current@FreeBSD.org cc: k-gleb@yandex.ru cc: dan.cojocar@gmail.com cc: John Baldwin Subject: Re: Interrupt storm 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, 12 Apr 2005 17:57:52 -0000 Antoine Brodin wrote: > John Baldwin wrote: > >>On Saturday 09 April 2005 05:57 am, Antoine Brodin wrote: >> >>>John Baldwin wrote: >>> >>>>I think your other link devices are meant to be used in APIC mode (note >>>>their names start with 'A') and thus I think they are aliases for the >>>>other link devices. So when I turn off the alias, I turn off the >>>>non-APIC mode one as well. Working BIOSen handle this by having the same >>>>link device change its behavior (different _PRS return values) depending >>>>on the PIC mode. It's not easy to determine if a link is just not used >>>>(for example, if no card is plugged into a slot with a dedicated link) or >>>>if it's an alias. I think having two ACPI devices alias to the same >>>>hardware is a bug in the BIOS though. Perhaps your BIOS vendor can be >>>>convinced to fix this. Can you see if Linux has the same problem btw? >>> >>>I've just sent a technical support request to ASUS. I'll let you know >>>when they reply. >>>Linux doesn't have the same problem: I tested with a knoppix live cd >>>yesterday. >>>dmesg: http://bsd.miki.eu.org/~antoine/knoppix36.dmesg , but it doesn't >>>look very helpful. >> >>Actually, it is. What Linux is doing is probing all the link devices before >>it probes any PCI devices, so all the _DIS calls happen before any interrupts >>are routed. I believe Nate knows how to get FreeBSD to do something similar >>via a hack. > > > There's this hack that works here: > > %%% > Index: acpi.c > =================================================================== > RCS file: /home/ncvs/src/sys/dev/acpica/acpi.c,v > retrieving revision 1.210 > diff -u -p -r1.210 acpi.c > --- acpi.c 31 Mar 2005 19:07:26 -0000 1.210 > +++ acpi.c 9 Apr 2005 09:50:54 -0000 > @@ -1503,6 +1503,9 @@ acpi_probe_order(ACPI_HANDLE handle, int > } else if (acpi_MatchHid(handle, "PNP0C09")) { > *order = 2; > ret = 1; > + } else if (acpi_MatchHid(handle, "PNP0C0F")) { > + *order = 3; > + ret = 1; > } > > return (ret); > %%% That is exactly the right one and we should have been doing this already. -- Nate