Hello! Just briefly from my side, but Marek would probably answer it better. On Tuesday 27 September 2022 10:29:26 Lorenzo Pieralisi wrote: > Better, certainly. Question, also related to Marc's query. Do you > rely on the hotplug (emulated IRQ) to be run _before_ carrying on > with PCI config space accesses following a link-up detection ? During PCI config space access is PCI core code holding atomic raw spin lock, so link-up check from PCI config space can throw emulated HP IRQ only _after_ config space is finished (when IRQs are unmasked again). So it happens after (not before). > How was the jiffies + 1 expiration time determined ? jiffies + 1 was chosen as the earliest possible time when HP IRQ can be thrown. Somebody said to me (year or more ago, no remember who and when) that I cannot use just "jiffies", I have to use "jiffies + 1", so timer would be scheduled after my call finish, which is after PCI config space access finish. jiffies + 1 should be the earliest possible time with the highest priority. > I assume you > want to run the emulated HP IRQ asap - the question though is > how fast should it be ? HP IRQ should be thrown _ASAP_ when we know that link is up, so PCIe HP driver can handle it and do its job. Just like for hardware which fully and correctly supports link up HP IRQs.