On 05/09/14 11:09, Yijing Wang wrote: > Commit 0e4ccb150 added two __weak arch functions arch_msix_mask_irq() > and arch_msi_mask_irq() to fix a bug found when running xen in x86. > Introduced these two funcntions make MSI code complex. And mask/unmask > is the irq actions related to interrupt controller, should not use > weak arch functions to override mask/unmask interfaces. This patch > reverted commit 0e4ccb150 and export struct irq_chip msi_chip, modify > msi_chip->irq_mask/irq_unmask() in xen init functions to fix this > bug for simplicity. Also this is preparation for using struct > msi_chip instead of weak arch MSI functions in all platforms. Acked-by: David Vrabel <david.vrabel@xxxxxxxxxx> But I wonder if it would be better the Xen subsystem to provide its own struct irq_chip instead of adjusting the fields in the generic x86 one. David