• R
    ACPI / hotplug: Refuse to hot-remove all objects with disabled hotplug · 7f28ddec
    Rafael J. Wysocki 提交于
    In theory, an ACPI device object may be the parent of another
    device object whose hotplug is disabled by user space through its
    scan handler.  In that case, the eject operation targeting the
    parent should fail as though the parent's own hotplug was disabled,
    but currently this is not the case, because acpi_scan_hot_remove()
    doesn't check the disable/enable hotplug status of the children
    of the top-most object passed to it.
    
    To fix this, modify acpi_bus_offline_companions() to return an
    error code if hotplug is disabled for the given device object.
    [Also change the name of the function to acpi_bus_offline(),
    because it is not only about companions any more, and change
    the name of acpi_bus_online_companions() accordingly.]  Make
    acpi_scan_hot_remove() propagate that error to its callers.
    Signed-off-by: NRafael J. Wysocki <rafael.j.wysocki@intel.com>
    Acked-by: NToshi Kani <toshi.kani@hp.com>
    7f28ddec
scan.c 53.8 KB