• R
    ACPI / hotplug / PCI: Add ACPIPHP contexts to devices handled by PCIeHP · cc6254e0
    Rafael J. Wysocki 提交于
    Currently, ACPIPHP does not add hotplug context to devices that
    should be handled by the native PCI hotplug (PCIeHP) code.  The
    reason why was because PCIeHP didn't know about the devices'
    connections with ACPI and would not clean up things properly
    during an eject of an ACPI-backed device, for example.
    
    However, after recent changes that made the ACPI core create struct
    acpi_device objects for all namespace nodes regardless of the
    underlying devices' status and added PCI rescan-remove locking to
    both ACPIPHP and PCIeHP, that concern is not valid any more.
    Namely, after those changes PCIeHP need not care about the ACPI
    side of things any more and it should be serialized with respect to
    ACPIPHP and they won't be running concurrently with each other in
    any case.
    
    For this reason, make ACPIPHP to add its hotplug context to
    all devices with ACPI companions, even the ones that should be
    handled by PCIeHP in principle.  That may work around hotplug
    issues on some systems where PCIeHP is supposed to work, but it
    doesn't and the ACPI hotplug signaling works instead.
    Signed-off-by: NRafael J. Wysocki <rafael.j.wysocki@intel.com>
    cc6254e0
acpiphp_glue.c 26.3 KB