[PATCH](memory hotplug) Fix unnecessary calling of init_currenty_empty_zone()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello.

This patch is to fix unnecessary calling of init_currently_empty_zone().

zone->present_pages is updated in online_pages(). But,
__add_zone() can be called twice or more before calling online_pages().
So, init_currenty_empty_zone() can be called unnecessary times.
It is cause of memory leak of zone's wait_table.

This patch is tested on my ia64 box with 2.6.22-rc2-mm1.

Signed-off-by: Yasunori Goto <[email protected]>

 mm/memory_hotplug.c |    2 +-
 1 files changed, 1 insertion(+), 1 deletion(-)

Index: vmemmap/mm/memory_hotplug.c
===================================================================
--- vmemmap.orig/mm/memory_hotplug.c	2007-05-29 15:30:28.000000000 +0900
+++ vmemmap/mm/memory_hotplug.c	2007-05-29 17:31:43.000000000 +0900
@@ -65,7 +65,7 @@ static int __add_zone(struct zone *zone,
 	int zone_type;
 
 	zone_type = zone - pgdat->node_zones;
-	if (!populated_zone(zone)) {
+	if (!zone->wait_table) {
 		int ret = 0;
 		ret = init_currently_empty_zone(zone, phys_start_pfn,
 						nr_pages, MEMMAP_HOTPLUG);

-- 
Yasunori Goto 


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux