From mboxrd@z Thu Jan 1 00:00:00 1970 From: Sinan Kaya Subject: Re: 4.7 regression: ACPI: No IRQ available for PCI Interrupt Link [LNKD]. Try pci=noacpi or acpi=off Date: Fri, 30 Sep 2016 17:14:40 -0400 Message-ID: References: <201609251512.05657.linux@rainbow-software.org> <201609300844.24325.linux@rainbow-software.org> <677698369b23f5a6bcf3a66fed78802f@codeaurora.org> <201609301756.25894.linux@rainbow-software.org> <94aee80e-f7c3-5732-ef1e-08e3ecb19e5e@codeaurora.org> <5ee9b263-ed42-ee16-057e-2f4c1d2c1dc6@codeaurora.org> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit Return-path: Received: from smtp.codeaurora.org ([198.145.29.96]:37071 "EHLO smtp.codeaurora.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751130AbcI3VOn (ORCPT ); Fri, 30 Sep 2016 17:14:43 -0400 In-Reply-To: Sender: linux-acpi-owner@vger.kernel.org List-Id: linux-acpi@vger.kernel.org To: "Rafael J. Wysocki" Cc: Ondrej Zary , "Rafael J. Wysocki" , Bjorn Helgaas , Linux Kernel Mailing List , ACPI Devel Maling List , Linux PCI , wim@djo.tudelft.nl, ravikanth.nalla@hpe.com On 9/30/2016 5:04 PM, Rafael J. Wysocki wrote: >> > >> > I hope it makes sense now. I tend to skip details sometimes. Feel free to >> > send more questions. > Thanks for the information! > > IIUC, basically, what you are proposing would be to restore the old > penalizing method for IRQs in the 0-255 range and use the new approach > for the rest, right? Correct. > > What's the drawback, if any? I don't see any drawback to be honest. The reason why I got rid of these ISA API functions was to remove some of the x86ism from ACPI code. This was Bjorn's request to clean it up and we failed in two places so far. 1. acpi_irq_penalty_init 2. acpi_penalize_sci_irq and we ended up reverting both of these changes. The reverts are all because of the fact that these APIs are called asynchronously without any coordination with the PCI Link object or the interrupt controller driver about when it is a good time to be called. During this debug, I learnt that acpi_penalize_isa_irq gets called before even ACPI gets to initialize and relies on static IRQ array for keeping the penalties. > > Thanks, > Rafael > -- Sinan Kaya Qualcomm Datacenter Technologies, Inc. as an affiliate of Qualcomm Technologies, Inc. Qualcomm Technologies, Inc. is a member of the Code Aurora Forum, a Linux Foundation Collaborative Project.