On Mon, Apr 17, 2017 at 01:20:48AM +0200, Rafael J. Wysocki wrote: > From: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx> > > acpi_bus_attach() does not check the visited flag for devices that > have been enumerated already and some of them may be enumerated > for multiple times as a result, because some callers of > acpi_bus_scan() don't check the visited flag either. > > For this reason, modify acpi_bus_attach() to check the visited flag > and avoid enumerating devices that have already been enumerated. > > Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx> Reviewed-by: Joey Lee <jlee@xxxxxxxx> Thanka a lot! Joey Lee > --- > drivers/acpi/scan.c | 2 ++ > 1 file changed, 2 insertions(+) > > Index: linux-pm/drivers/acpi/scan.c > =================================================================== > --- linux-pm.orig/drivers/acpi/scan.c > +++ linux-pm/drivers/acpi/scan.c > @@ -1850,6 +1850,8 @@ static void acpi_bus_attach(struct acpi_ > device->flags.power_manageable = 0; > > device->flags.initialized = true; > + } else if (device->flags.visited) { > + goto ok; > } > > ret = acpi_scan_attach_handler(device); > > -- > To unsubscribe from this list: send the line "unsubscribe linux-acpi" in > the body of a message to majordomo@xxxxxxxxxxxxxxx > More majordomo info at http://vger.kernel.org/majordomo-info.html -- To unsubscribe from this list: send the line "unsubscribe linux-acpi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html