From 5af90438023786e27178cc542f9a775594f8a126 Mon Sep 17 00:00:00 2001 From: Steve Magnani Date: Mon, 18 May 2009 03:22:40 +0200 Subject: microblaze: Fix paging init-zone initialization This patch fix problem with bad zone initialization. This bug wasn't perform because Microblaze doesn't define CONFIG_ZONE_DMA and ZONE_NORMAL was 0 for this case that's why free_area_init works with correct values. Original message: I believe that the switch from ZONE_DMA (== 0) to ZONE_NORMAL broke the free area initialization. Signed-off-by: Steven J. Magnani Signed-off-by: Michal Simek --- arch/microblaze/mm/init.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) (limited to 'arch/microblaze') diff --git a/arch/microblaze/mm/init.c b/arch/microblaze/mm/init.c index 31ec053c1dd..6ef5088a8d2 100644 --- a/arch/microblaze/mm/init.c +++ b/arch/microblaze/mm/init.c @@ -44,16 +44,15 @@ static void __init paging_init(void) int i; unsigned long zones_size[MAX_NR_ZONES]; + /* Clean every zones */ + memset(zones_size, 0, sizeof(zones_size)); + /* * old: we can DMA to/from any address.put all page into ZONE_DMA * We use only ZONE_NORMAL */ zones_size[ZONE_NORMAL] = max_mapnr; - /* every other zones are empty */ - for (i = 1; i < MAX_NR_ZONES; i++) - zones_size[i] = 0; - free_area_init(zones_size); } -- cgit v1.2.3