On 9/30/2016 5:27 PM, Rafael J. Wysocki wrote: > On Fri, Sep 30, 2016 at 11:14 PM, Sinan Kaya <okaya@xxxxxxxxxxxxxx> wrote: >> 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. > > I'd go for it then, if Bjorn doesn't hate it. OK. I'll prep something. Bjorn? > >> 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. > > So maybe add some comments to that code to explain why things are > arranged the way they are. We may need/want to revisit it at one > point and such comments will be very useful then. Yeah, I think this code definitely needs some documentation. It ended up being one of the most fragile places in the kernel. This is my 3rd attempt to rearrange the code. > > Thanks, > Rafael > -- > To unsubscribe from this list: send the line "unsubscribe linux-pci" in > the body of a message to majordomo@xxxxxxxxxxxxxxx > More majordomo info at http://vger.kernel.org/majordomo-info.html > -- 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. -- To unsubscribe from this list: send the line "unsubscribe linux-acpi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html