ACPI / scan: do not match drivers against objects having scan handlers
[cascardo/linux.git] / drivers / acpi / scan.c
index 44225cb..90c5759 100644 (file)
@@ -740,6 +740,10 @@ static int acpi_bus_match(struct device *dev, struct device_driver *drv)
        struct acpi_device *acpi_dev = to_acpi_device(dev);
        struct acpi_driver *acpi_drv = to_acpi_driver(drv);
 
+       /* Skip ACPI device objects with scan handlers attached. */
+       if (acpi_dev->handler)
+               return 0;
+
        return acpi_dev->flags.match_driver
                && !acpi_match_device_ids(acpi_dev, acpi_drv->ids);
 }