On Wed 31-07-19 15:53:06, David Hildenbrand wrote: > Let's document why the lock is not needed in acpi_scan_init(), right now > this is not really obvious. > > Cc: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx> > Cc: Michal Hocko <mhocko@xxxxxxxx> > Cc: Oscar Salvador <osalvador@xxxxxxx> > Cc: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> > Signed-off-by: David Hildenbrand <david@xxxxxxxxxx> Acked-by: Michal Hocko <mhocko@xxxxxxxx> Thanks! > --- > > @Andrew, can you drop "drivers/acpi/scan.c: acquire device_hotplug_lock in > acpi_scan_init()" and add this patch instead? Thanks > > --- > drivers/acpi/scan.c | 6 ++++++ > 1 file changed, 6 insertions(+) > > diff --git a/drivers/acpi/scan.c b/drivers/acpi/scan.c > index 0e28270b0fd8..8444af6cd514 100644 > --- a/drivers/acpi/scan.c > +++ b/drivers/acpi/scan.c > @@ -2204,6 +2204,12 @@ int __init acpi_scan_init(void) > acpi_gpe_apply_masked_gpes(); > acpi_update_all_gpes(); > > + /* > + * Although we call__add_memory() that is documented to require the > + * device_hotplug_lock, it is not necessary here because this is an > + * early code when userspace or any other code path cannot trigger > + * hotplug/hotunplug operations. > + */ > mutex_lock(&acpi_scan_lock); > /* > * Enumerate devices in the ACPI namespace. > -- > 2.21.0 -- Michal Hocko SUSE Labs