• Rafael J. Wysocki's avatar
    Revert "x86/PCI: Refine the way to release PCI IRQ resources" · 9e8ce4b9
    Rafael J. Wysocki authored
    Commit b4b55cda (Refine the way to release PCI IRQ resources)
    introduced a regression in the PCI IRQ resource management by causing
    the IRQ resource of a device, established when pci_enabled_device()
    is called on a fully disabled device, to be released when the driver
    is unbound from the device, regardless of the enable_cnt.
    
    This leads to the situation that an ill-behaved driver can now make a
    device unusable to subsequent drivers by an imbalance in their use of
    pci_enable/disable_device().  That is a serious problem for secondary
    drivers like vfio-pci, which are innocent of the transgressions of
    the previous driver.
    
    Since the solution of this problem is not immediate and requires
    further discussion, revert commit b4b55cda and the issue it was
    supposed to address (a bug related to xen-pciback) will be taken
    care of in a different way going forward.
    Reported-by: default avatarAlex Williamson <alex.williamson@redhat.com>
    Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
    9e8ce4b9
irq.c 32.9 KB