On Fri, Aug 01, 2014 at 02:54:31PM +1000, Gavin Shan wrote: >The VFIO driver is routing LSI interrupts by capturing, masking, >and then delivering. When passing though Mallanox adapters from one typo Mellanox Others, looks good to me. >host to guest, interrupt storm was reported from host and guest. >That's because we can't mask the LSI interrupt with help of PCI >command register. > >[root@ncc-1701 ~]# lspci | grep Mellanox >0001:05:00.0 Ethernet controller: Mellanox Technologies MT27500 \ > Family [ConnectX-3] >0005:01:00.0 Ethernet controller: Mellanox Technologies MT26448 \ > [ConnectX EN 10GigE, PCIe 2.0 5GT/s] (rev b0) > >The patch marks broken INTx masking for Mellanox devices so that >the VFIO driver will always mask the interrupt from interrupt >controller side to avoid interrupt storm. > >Cc: Amir Vadai <amirv@xxxxxxxxxxxx> >Suggested-by: Benjamin Herrenschmidt <benh@xxxxxxxxxxxxxxxxxxx> >Signed-off-by: Gavin Shan <gwshan@xxxxxxxxxxxxxxxxxx> >--- > drivers/pci/quirks.c | 4 ++++ > 1 file changed, 4 insertions(+) > >diff --git a/drivers/pci/quirks.c b/drivers/pci/quirks.c >index d0f6926..8c2b96f 100644 >--- a/drivers/pci/quirks.c >+++ b/drivers/pci/quirks.c >@@ -2977,6 +2977,10 @@ DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_CHELSIO, 0x0030, > quirk_broken_intx_masking); > DECLARE_PCI_FIXUP_HEADER(0x1814, 0x0601, /* Ralink RT2800 802.11n PCI */ > quirk_broken_intx_masking); >+DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_MELLANOX, 0x1003, >+ quirk_broken_intx_masking); >+DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_MELLANOX, 0x6750, >+ quirk_broken_intx_masking); > /* > * Realtek RTL8169 PCI Gigabit Ethernet Controller (rev 10) > * Subsystem: Realtek RTL8169/8110 Family PCI Gigabit Ethernet NIC >-- >1.8.3.2 > >-- >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 -- Richard Yang Help you, Help me -- 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