mm: free_area_init: use maximal zone PFNs rather than zone sizes
[linux-2.6-microblaze.git] / arch / alpha / mm / init.c
index 12e218d..667cd21 100644 (file)
@@ -243,21 +243,17 @@ callback_init(void * kernel_end)
  */
 void __init paging_init(void)
 {
-       unsigned long zones_size[MAX_NR_ZONES] = {0, };
-       unsigned long dma_pfn, high_pfn;
+       unsigned long max_zone_pfn[MAX_NR_ZONES] = {0, };
+       unsigned long dma_pfn;
 
        dma_pfn = virt_to_phys((char *)MAX_DMA_ADDRESS) >> PAGE_SHIFT;
-       high_pfn = max_pfn = max_low_pfn;
+       max_pfn = max_low_pfn;
 
-       if (dma_pfn >= high_pfn)
-               zones_size[ZONE_DMA] = high_pfn;
-       else {
-               zones_size[ZONE_DMA] = dma_pfn;
-               zones_size[ZONE_NORMAL] = high_pfn - dma_pfn;
-       }
+       max_zone_pfn[ZONE_DMA] = dma_pfn;
+       max_zone_pfn[ZONE_NORMAL] = max_pfn;
 
        /* Initialize mem_map[].  */
-       free_area_init(zones_size);
+       free_area_init(max_zone_pfn);
 
        /* Initialize the kernel's ZERO_PGE. */
        memset((void *)ZERO_PGE, 0, PAGE_SIZE);