• Matthew Garrett's avatar
    Fixups to ATA ACPI hotplug · ae6c23c4
    Matthew Garrett authored
    The libata-acpi.c code currently accepts hotplug messages from both the
    port and the device. This does not match the behaviour of the bay
    driver, and may result in confusion when two hotplug requests are
    received for the same device. This patch limits the hotplug notification
    to removable ACPI devices, which in turn allows it to use the _STA
    method to determine whether the device has been removed or inserted.
    On removal, devices are marked as detached. On insertion, a hotplug scan
    is started. This should avoid lockups caused by the ata layer attempting
    to scan devices which have been removed. The uevent sending is moved
    outside the spinlock in order to avoid a warning generated by it firing
    when interrupts are disabled.
    Signed-off-by: default avatarMatthew Garrett <mjg@redhat.com>
    Signed-off-by: default avatarJeff Garzik <jgarzik@redhat.com>
    ae6c23c4
libata-acpi.c 23.9 KB