diff mbox

PCI: Add Intel XXV710 to broken INTx masking quirk

Message ID 20170607190027.22611.92564.stgit@gimli.home (mailing list archive)
State New, archived
Delegated to: Bjorn Helgaas
Headers show

Commit Message

Alex Williamson June 7, 2017, 7 p.m. UTC
Just like the other XL710 and X710 variants, the XXV710 device IDs
appear to have the same hardware bug, the status register doesn't
report pending interrupts resulting in "irq xx: nobody cared..."
errors from the spurious interrupt handler when we try to use it
with device assignment.

Reported-by: Stefan Assmann <sassmann@redhat.com>
Signed-off-by: Alex Williamson <alex.williamson@redhat.com>
Cc: Jesse Brandeburg <jesse.brandeburg@intel.com>
---
 drivers/pci/quirks.c |    4 ++++
 1 file changed, 4 insertions(+)

Comments

Jesse Brandeburg June 8, 2017, 5:18 p.m. UTC | #1
On Wed, 7 Jun 2017 13:00:48 -0600
Alex Williamson <alex.williamson@redhat.com> wrote:

> Just like the other XL710 and X710 variants, the XXV710 device IDs
> appear to have the same hardware bug, the status register doesn't
> report pending interrupts resulting in "irq xx: nobody cared..."
> errors from the spurious interrupt handler when we try to use it
> with device assignment.

Thanks for doing this Alex,

Acked-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Bjorn Helgaas June 12, 2017, 9:56 p.m. UTC | #2
On Wed, Jun 07, 2017 at 01:00:48PM -0600, Alex Williamson wrote:
> Just like the other XL710 and X710 variants, the XXV710 device IDs
> appear to have the same hardware bug, the status register doesn't
> report pending interrupts resulting in "irq xx: nobody cared..."
> errors from the spurious interrupt handler when we try to use it
> with device assignment.
> 
> Reported-by: Stefan Assmann <sassmann@redhat.com>
> Signed-off-by: Alex Williamson <alex.williamson@redhat.com>
> Cc: Jesse Brandeburg <jesse.brandeburg@intel.com>

Applied with Jesse's ack to pci/virtualization for v4.13, thanks!

> ---
>  drivers/pci/quirks.c |    4 ++++
>  1 file changed, 4 insertions(+)
> 
> diff --git a/drivers/pci/quirks.c b/drivers/pci/quirks.c
> index 16e6cd86ad71..aa1c9e65f562 100644
> --- a/drivers/pci/quirks.c
> +++ b/drivers/pci/quirks.c
> @@ -3236,6 +3236,10 @@ static void quirk_broken_intx_masking(struct pci_dev *dev)
>  			quirk_broken_intx_masking);
>  DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, 0x1589,
>  			quirk_broken_intx_masking);
> +DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, 0x158a,
> +			quirk_broken_intx_masking);
> +DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, 0x158b,
> +			quirk_broken_intx_masking);
>  DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, 0x37d0,
>  			quirk_broken_intx_masking);
>  DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, 0x37d1,
>
diff mbox

Patch

diff --git a/drivers/pci/quirks.c b/drivers/pci/quirks.c
index 16e6cd86ad71..aa1c9e65f562 100644
--- a/drivers/pci/quirks.c
+++ b/drivers/pci/quirks.c
@@ -3236,6 +3236,10 @@  static void quirk_broken_intx_masking(struct pci_dev *dev)
 			quirk_broken_intx_masking);
 DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, 0x1589,
 			quirk_broken_intx_masking);
+DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, 0x158a,
+			quirk_broken_intx_masking);
+DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, 0x158b,
+			quirk_broken_intx_masking);
 DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, 0x37d0,
 			quirk_broken_intx_masking);
 DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, 0x37d1,