Current all acpi_bus_trim callers have rmdevice to 1.
that means it will remove all acpi devices.

When 0, is passed, it will keep the parent.

For root bus hotremove support, we need to have pci device to be
removed before acpi devices.

So try to keep all acpi devices, and only stop drivers with them.

This change should be safe because all current callers all have 1 passed.

Signed-off-by: Yinghai Lu <ying...@kernel.org>
Cc: Len Brown <l...@kernel.org>
Cc: linux-a...@vger.kernel.org
---
 drivers/acpi/scan.c |    5 +----
 1 file changed, 1 insertion(+), 4 deletions(-)

diff --git a/drivers/acpi/scan.c b/drivers/acpi/scan.c
index e380345..db7664e 100644
--- a/drivers/acpi/scan.c
+++ b/drivers/acpi/scan.c
@@ -1669,10 +1669,7 @@ int acpi_bus_trim(struct acpi_device *start, int 
rmdevice)
                        child = parent;
                        parent = parent->parent;
 
-                       if (level == 0)
-                               err = acpi_bus_remove(child, rmdevice);
-                       else
-                               err = acpi_bus_remove(child, 1);
+                       err = acpi_bus_remove(child, rmdevice);
 
                        continue;
                }
-- 
1.7.10.4

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to