Patchwork [27/40] ACPI: acpi_bus_trim to support two steps.

login
register
mail settings
Submitter Yinghai Lu
Date Sept. 19, 2012, 6:54 p.m.
Message ID <1348080894-23412-28-git-send-email-yinghai@kernel.org>
Download mbox | patch
Permalink /patch/185162/
State Rejected
Headers show

Comments

Yinghai Lu - Sept. 19, 2012, 6:54 p.m.
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 one parent.

For root bus hotremove support, we need to have pci device 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 <yinghai@kernel.org>
Cc: Len Brown <lenb@kernel.org>
Cc: linux-acpi@vger.kernel.org
---
 drivers/acpi/scan.c |    5 +----
 1 files changed, 1 insertions(+), 4 deletions(-)

Patch

diff --git a/drivers/acpi/scan.c b/drivers/acpi/scan.c
index d1ecca2..d1a1f25 100644
--- a/drivers/acpi/scan.c
+++ b/drivers/acpi/scan.c
@@ -1539,10 +1539,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;
 		}