提交 f06a9684 编写于 作者: C Christoph Lameter 提交者: Linus Torvalds

[PATCH] reduce MAX_NR_ZONES: fix MAX_NR_ZONES array initializations

Fix array initialization in lots of arches

The number of zones may now be reduced from 4 to 2 for many arches.  Fix the
array initialization for the zones array for all architectures so that it is
not initializing a fixed number of elements.
Signed-off-by: NChristoph Lameter <clameter@sgi.com>
Signed-off-by: NAndrew Morton <akpm@osdl.org>
Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
上级 776ed98b
...@@ -270,7 +270,7 @@ callback_init(void * kernel_end) ...@@ -270,7 +270,7 @@ callback_init(void * kernel_end)
void void
paging_init(void) paging_init(void)
{ {
unsigned long zones_size[MAX_NR_ZONES] = {0, 0, 0}; unsigned long zones_size[MAX_NR_ZONES] = {0, };
unsigned long dma_pfn, high_pfn; unsigned long dma_pfn, high_pfn;
dma_pfn = virt_to_phys((char *)MAX_DMA_ADDRESS) >> PAGE_SHIFT; dma_pfn = virt_to_phys((char *)MAX_DMA_ADDRESS) >> PAGE_SHIFT;
......
...@@ -98,7 +98,7 @@ void show_mem(void) ...@@ -98,7 +98,7 @@ void show_mem(void)
*/ */
void __init paging_init(void) void __init paging_init(void)
{ {
unsigned long zones_size[MAX_NR_ZONES] = {0, 0, 0}; unsigned long zones_size[MAX_NR_ZONES] = {0, };
/* allocate some pages for kernel housekeeping tasks */ /* allocate some pages for kernel housekeeping tasks */
empty_bad_page_table = (unsigned long) alloc_bootmem_pages(PAGE_SIZE); empty_bad_page_table = (unsigned long) alloc_bootmem_pages(PAGE_SIZE);
......
...@@ -138,7 +138,7 @@ void paging_init(void) ...@@ -138,7 +138,7 @@ void paging_init(void)
#endif #endif
{ {
unsigned long zones_size[MAX_NR_ZONES] = {0, 0, 0}; unsigned long zones_size[MAX_NR_ZONES] = {0, };
zones_size[ZONE_DMA] = 0 >> PAGE_SHIFT; zones_size[ZONE_DMA] = 0 >> PAGE_SHIFT;
zones_size[ZONE_NORMAL] = (end_mem - PAGE_OFFSET) >> PAGE_SHIFT; zones_size[ZONE_NORMAL] = (end_mem - PAGE_OFFSET) >> PAGE_SHIFT;
......
...@@ -1182,7 +1182,7 @@ static unsigned long __init setup_memory(void) ...@@ -1182,7 +1182,7 @@ static unsigned long __init setup_memory(void)
void __init zone_sizes_init(void) void __init zone_sizes_init(void)
{ {
unsigned long zones_size[MAX_NR_ZONES] = {0, 0, 0}; unsigned long zones_size[MAX_NR_ZONES] = { 0, };
unsigned int max_dma, low; unsigned int max_dma, low;
max_dma = virt_to_phys((char *)MAX_DMA_ADDRESS) >> PAGE_SHIFT; max_dma = virt_to_phys((char *)MAX_DMA_ADDRESS) >> PAGE_SHIFT;
......
...@@ -367,7 +367,7 @@ void __init zone_sizes_init(void) ...@@ -367,7 +367,7 @@ void __init zone_sizes_init(void)
for_each_online_node(nid) { for_each_online_node(nid) {
unsigned long zones_size[MAX_NR_ZONES] = {0, 0, 0}; unsigned long zones_size[MAX_NR_ZONES] = {0, };
unsigned long *zholes_size; unsigned long *zholes_size;
unsigned int max_dma; unsigned int max_dma;
......
...@@ -100,7 +100,7 @@ void free_initrd_mem(unsigned long, unsigned long); ...@@ -100,7 +100,7 @@ void free_initrd_mem(unsigned long, unsigned long);
#ifndef CONFIG_DISCONTIGMEM #ifndef CONFIG_DISCONTIGMEM
unsigned long __init zone_sizes_init(void) unsigned long __init zone_sizes_init(void)
{ {
unsigned long zones_size[MAX_NR_ZONES] = {0, 0, 0}; unsigned long zones_size[MAX_NR_ZONES] = {0, };
unsigned long max_dma; unsigned long max_dma;
unsigned long low; unsigned long low;
unsigned long start_pfn; unsigned long start_pfn;
......
...@@ -136,7 +136,7 @@ void paging_init(void) ...@@ -136,7 +136,7 @@ void paging_init(void)
#endif #endif
{ {
unsigned long zones_size[MAX_NR_ZONES] = {0, 0, 0}; unsigned long zones_size[MAX_NR_ZONES] = {0, };
zones_size[ZONE_DMA] = 0 >> PAGE_SHIFT; zones_size[ZONE_DMA] = 0 >> PAGE_SHIFT;
zones_size[ZONE_NORMAL] = (end_mem - PAGE_OFFSET) >> PAGE_SHIFT; zones_size[ZONE_NORMAL] = (end_mem - PAGE_OFFSET) >> PAGE_SHIFT;
......
...@@ -163,10 +163,10 @@ static int __init page_is_ram(unsigned long pagenr) ...@@ -163,10 +163,10 @@ static int __init page_is_ram(unsigned long pagenr)
void __init paging_init(void) void __init paging_init(void)
{ {
unsigned long zones_size[] = { [0 ... MAX_NR_ZONES - 1] = 0 }; unsigned long zones_size[] = { 0, };
unsigned long max_dma, high, low; unsigned long max_dma, high, low;
#ifndef CONFIG_FLATMEM #ifndef CONFIG_FLATMEM
unsigned long zholes_size[] = { [0 ... MAX_NR_ZONES - 1] = 0 }; unsigned long zholes_size[] = { 0, };
unsigned long i, j, pfn; unsigned long i, j, pfn;
#endif #endif
......
...@@ -508,7 +508,7 @@ extern unsigned long setup_zero_pages(void); ...@@ -508,7 +508,7 @@ extern unsigned long setup_zero_pages(void);
void __init paging_init(void) void __init paging_init(void)
{ {
unsigned long zones_size[MAX_NR_ZONES] = {0, 0, 0}; unsigned long zones_size[MAX_NR_ZONES] = {0, };
unsigned node; unsigned node;
pagetable_init(); pagetable_init();
......
...@@ -809,7 +809,7 @@ void __init paging_init(void) ...@@ -809,7 +809,7 @@ void __init paging_init(void)
flush_tlb_all_local(NULL); flush_tlb_all_local(NULL);
for (i = 0; i < npmem_ranges; i++) { for (i = 0; i < npmem_ranges; i++) {
unsigned long zones_size[MAX_NR_ZONES] = { 0, 0, 0 }; unsigned long zones_size[MAX_NR_ZONES] = { 0, };
/* We have an IOMMU, so all memory can go into a single /* We have an IOMMU, so all memory can go into a single
ZONE_DMA zone. */ ZONE_DMA zone. */
......
...@@ -110,7 +110,7 @@ void show_mem(void) ...@@ -110,7 +110,7 @@ void show_mem(void)
*/ */
void __init paging_init(void) void __init paging_init(void)
{ {
unsigned long zones_size[MAX_NR_ZONES] = {0, 0, 0}; unsigned long zones_size[MAX_NR_ZONES] = {0, };
pgd_init((unsigned long)swapper_pg_dir); pgd_init((unsigned long)swapper_pg_dir);
pgd_init((unsigned long)swapper_pg_dir + pgd_init((unsigned long)swapper_pg_dir +
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册