From: Dave Hansen <haveblue@us.ibm.com>

Both the pgdats and the struct zonelist are zeroed unnecessarily.  The
zonelist is a member of the pgdat, so any time the pgdat is cleared, so is the
zonelist.  All of the architectures present a zeroed pgdat to the generic
code, so it's not necessary to set it again.

Not clearing it like this allows the functions to be reused by the memory
hotplug code.  The only architecture which has a dependence on these clears is
i386.  The previous patch in this series fixed that up.

Signed-off-by: Dave Hansen <haveblue@us.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
---

 25-akpm/mm/page_alloc.c |    2 --
 1 files changed, 2 deletions(-)

diff -puN mm/page_alloc.c~x86-do-not-unnecessarily-memset-the-pgdats mm/page_alloc.c
--- 25/mm/page_alloc.c~x86-do-not-unnecessarily-memset-the-pgdats	2005-02-28 16:37:27.000000000 -0800
+++ 25-akpm/mm/page_alloc.c	2005-02-28 16:37:28.000000000 -0800
@@ -1403,7 +1403,6 @@ static void __init build_zonelists(pg_da
 	/* initialize zonelists */
 	for (i = 0; i < GFP_ZONETYPES; i++) {
 		zonelist = pgdat->node_zonelists + i;
-		memset(zonelist, 0, sizeof(*zonelist));
 		zonelist->zones[0] = NULL;
 	}
 
@@ -1450,7 +1449,6 @@ static void __init build_zonelists(pg_da
 		struct zonelist *zonelist;
 
 		zonelist = pgdat->node_zonelists + i;
-		memset(zonelist, 0, sizeof(*zonelist));
 
 		j = 0;
 		k = ZONE_NORMAL;
_