Commit 25e33ed9 authored by Linus Torvalds's avatar Linus Torvalds

Merge tag 'acpi-3.10-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm

Pull ACPI fix from Rafael Wysocki:
 "This is an alternative fix for the regression introduced in 3.9 whose
  previous fix had to be reverted right before 3.10-rc5, because it
  broke one of the Tony's machines.

  In this one the check is confined to the ACPI video driver (which is
  the only one causing the problem to happen in the first place) and the
  Tony's box shouldn't even notice it.

   - ACPI fix for an issue causing ACPI video driver to attempt to bind
     to devices it shouldn't touch from Rafael J Wysocki."

* tag 'acpi-3.10-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
  ACPI / video: Do not bind to device objects with a scan handler
parents cb03dc09 8c9b7a7b
...@@ -1017,11 +1017,8 @@ acpi_bus_driver_init(struct acpi_device *device, struct acpi_driver *driver) ...@@ -1017,11 +1017,8 @@ acpi_bus_driver_init(struct acpi_device *device, struct acpi_driver *driver)
return -ENOSYS; return -ENOSYS;
result = driver->ops.add(device); result = driver->ops.add(device);
if (result) { if (result)
device->driver = NULL;
device->driver_data = NULL;
return result; return result;
}
device->driver = driver; device->driver = driver;
......
...@@ -1722,6 +1722,9 @@ static int acpi_video_bus_add(struct acpi_device *device) ...@@ -1722,6 +1722,9 @@ static int acpi_video_bus_add(struct acpi_device *device)
int error; int error;
acpi_status status; acpi_status status;
if (device->handler)
return -EINVAL;
status = acpi_walk_namespace(ACPI_TYPE_DEVICE, status = acpi_walk_namespace(ACPI_TYPE_DEVICE,
device->parent->handle, 1, device->parent->handle, 1,
acpi_video_bus_match, NULL, acpi_video_bus_match, NULL,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment