Thomas Gleixner <tglx@xxxxxxxxxxxxx> writes: > On Wed, Oct 25 2023 at 10:55, Björn Töpel wrote: >>> Now for IMSIC-PCI domain, the PCI framework expects the >>> pci_msi_mask/unmask_irq() functions to be called but if >>> we directly point pci_msi_mask/unmask_irq() in the IMSIC-PCI >>> irqchip then IMSIC-BASE (parent domain) irq_mask/umask >>> won't be called hence the IRQ won't be masked/unmask. >>> Due to this, we call both pci_msi_mask/unmask_irq() and >>> irq_chip_mask/unmask_parent() for IMSIC-PCI domain. >> >> Ok. I wont dig more into it for now! If the interrupt is disabled at >> PCI, it seems a bit overkill to *also* mask it at the IMSIC level... > > Only _if_ the device provides MSI masking, but that extra mask/unmask is > not the end of the world. Yikes -- so MSI masking is optional. Ick. :-( Thanks for the excellent MSI vs MSI-X post in the other thread, BTW. Great stuff!