[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20060803123716.2e00952a.kamezawa.hiroyu@jp.fujitsu.com>
Date: Thu, 3 Aug 2006 12:37:16 +0900
From: KAMEZAWA Hiroyuki <kamezawa.hiroyu@...fujitsu.com>
To: LKML <linux-kernel@...r.kernel.org>
Cc: LHMS <lhms-devel@...ts.sourceforge.net>,
"kmannth@...ibm.com" <kmannth@...ibm.com>,
"y-goto@...fujitsu.com" <y-goto@...fujitsu.com>,
Andrew Morton <akpm@...l.org>
Subject: [PATCH] memory hotadd fixes [5/5] avoid registering res twice
both of acpi_memory_enable_device() and acpi_memory_add_device()
may evaluate _CRS method.
We should avoid evaluate device's resource twice if we could get it
successfully in past.
Signed-Off-By: KAMEZWA Hiroyuki <kamezawa.hiroyu@...fujitsu.com>
drivers/acpi/acpi_memhotplug.c | 4 ++++
1 files changed, 4 insertions(+)
Index: linux-2.6.18-rc3/drivers/acpi/acpi_memhotplug.c
===================================================================
--- linux-2.6.18-rc3.orig/drivers/acpi/acpi_memhotplug.c 2006-08-02 14:12:45.000000000 +0900
+++ linux-2.6.18-rc3/drivers/acpi/acpi_memhotplug.c 2006-08-02 14:24:10.000000000 +0900
@@ -129,11 +129,15 @@
struct acpi_memory_info *info, *n;
+ if (!list_empty(&mem_device->res_list))
+ return 0;
+
status = acpi_walk_resources(mem_device->device->handle, METHOD_NAME__CRS,
acpi_memory_get_resource, mem_device);
if (ACPI_FAILURE(status)) {
list_for_each_entry_safe(info, n, &mem_device->res_list, list)
kfree(info);
+ INIT_LIST_HEAD(&mem_device->res_list);
return -EINVAL;
}
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists