ACPI / memhotplug: bind the memory device when the driver is being loaded
authorWen Congyang <wency@cn.fujitsu.com>
Fri, 16 Nov 2012 01:12:38 +0000 (02:12 +0100)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Fri, 16 Nov 2012 01:12:38 +0000 (02:12 +0100)
We had introduced acpi_hotmem_initialized to avoid strange add_memory fail
message.  But the memory device may not be used by the kernel, and the
device should be bound when the driver is being loaded.  Remove
acpi_hotmem_initialized to allow that the device can be bound when the
driver is being loaded.

Signed-off-by: Wen Congyang <wency@cn.fujitsu.com>
Reviewed-by: Yasuaki Ishimatsu <isimatu.yasuaki@jp.fujitsu.com>
Acked-by: David Rientjes <rientjes@google.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
drivers/acpi/acpi_memhotplug.c

index f7e3007699668d13984e16823401d20fe2ce5e41..e0f7425c885488c0f8edba6f7ad804499718b45a 100644 (file)
@@ -87,8 +87,6 @@ struct acpi_memory_device {
        struct list_head res_list;
 };
 
-static int acpi_hotmem_initialized;
-
 static acpi_status
 acpi_memory_get_resource(struct acpi_resource *resource, void *context)
 {
@@ -433,15 +431,6 @@ static int acpi_memory_device_add(struct acpi_device *device)
 
        printk(KERN_DEBUG "%s \n", acpi_device_name(device));
 
-       /*
-        * Early boot code has recognized memory area by EFI/E820.
-        * If DSDT shows these memory devices on boot, hotplug is not necessary
-        * for them. So, it just returns until completion of this driver's
-        * start up.
-        */
-       if (!acpi_hotmem_initialized)
-               return 0;
-
        if (!acpi_memory_check_device(mem_device)) {
                /* call add_memory func */
                result = acpi_memory_enable_device(mem_device);
@@ -557,7 +546,6 @@ static int __init acpi_memory_device_init(void)
                return -ENODEV;
        }
 
-       acpi_hotmem_initialized = 1;
        return 0;
 }