Merge tag 'pci-v4.21-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaa...
[sfrench/cifs-2.6.git] / arch / s390 / pci / pci.c
index 9f6f392a44619ef41b910f5e6899c69d07a24edf..a966d7bfac579daa15514983d56993862363c502 100644 (file)
@@ -382,9 +382,7 @@ static void zpci_irq_handler(struct airq_struct *airq)
                        if (ai == -1UL)
                                break;
                        inc_irq_stat(IRQIO_MSI);
-                       airq_iv_lock(aibv, ai);
                        generic_handle_irq(airq_iv_get_data(aibv, ai));
-                       airq_iv_unlock(aibv, ai);
                }
        }
 }
@@ -410,7 +408,7 @@ int arch_setup_msi_irqs(struct pci_dev *pdev, int nvec, int type)
        zdev->aisb = aisb;
 
        /* Create adapter interrupt vector */
-       zdev->aibv = airq_iv_create(msi_vecs, AIRQ_IV_DATA | AIRQ_IV_BITLOCK);
+       zdev->aibv = airq_iv_create(msi_vecs, AIRQ_IV_DATA);
        if (!zdev->aibv)
                return -ENOMEM;
 
@@ -651,6 +649,9 @@ int pcibios_add_device(struct pci_dev *pdev)
        struct resource *res;
        int i;
 
+       if (pdev->is_physfn)
+               pdev->no_vf_scan = 1;
+
        pdev->dev.groups = zpci_attr_groups;
        pdev->dev.dma_ops = &s390_pci_dma_ops;
        zpci_map_resources(pdev);