提交 de4bcddc 编写于 作者: J Jiang Liu 提交者: Linus Torvalds

mm/IA64: prepare for removing num_physpages and simplify mem_init()

Prepare for removing num_physpages and simplify mem_init().
Signed-off-by: NJiang Liu <jiang.liu@huawei.com>
Cc: Tony Luck <tony.luck@intel.com>
Cc: Fenghua Yu <fenghua.yu@intel.com>
Cc: Zhang Yanfei <zhangyanfei@cn.fujitsu.com>
Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
上级 5dc355c1
...@@ -295,14 +295,6 @@ find_memory (void) ...@@ -295,14 +295,6 @@ find_memory (void)
alloc_per_cpu_data(); alloc_per_cpu_data();
} }
static int count_pages(u64 start, u64 end, void *arg)
{
unsigned long *count = arg;
*count += (end - start) >> PAGE_SHIFT;
return 0;
}
/* /*
* Set up the page tables. * Set up the page tables.
*/ */
...@@ -313,9 +305,6 @@ paging_init (void) ...@@ -313,9 +305,6 @@ paging_init (void)
unsigned long max_dma; unsigned long max_dma;
unsigned long max_zone_pfns[MAX_NR_ZONES]; unsigned long max_zone_pfns[MAX_NR_ZONES];
num_physpages = 0;
efi_memmap_walk(count_pages, &num_physpages);
memset(max_zone_pfns, 0, sizeof(max_zone_pfns)); memset(max_zone_pfns, 0, sizeof(max_zone_pfns));
#ifdef CONFIG_ZONE_DMA #ifdef CONFIG_ZONE_DMA
max_dma = virt_to_phys((void *) MAX_DMA_ADDRESS) >> PAGE_SHIFT; max_dma = virt_to_phys((void *) MAX_DMA_ADDRESS) >> PAGE_SHIFT;
......
...@@ -37,7 +37,6 @@ struct early_node_data { ...@@ -37,7 +37,6 @@ struct early_node_data {
struct ia64_node_data *node_data; struct ia64_node_data *node_data;
unsigned long pernode_addr; unsigned long pernode_addr;
unsigned long pernode_size; unsigned long pernode_size;
unsigned long num_physpages;
#ifdef CONFIG_ZONE_DMA #ifdef CONFIG_ZONE_DMA
unsigned long num_dma_physpages; unsigned long num_dma_physpages;
#endif #endif
...@@ -732,7 +731,6 @@ static __init int count_node_pages(unsigned long start, unsigned long len, int n ...@@ -732,7 +731,6 @@ static __init int count_node_pages(unsigned long start, unsigned long len, int n
{ {
unsigned long end = start + len; unsigned long end = start + len;
mem_data[node].num_physpages += len >> PAGE_SHIFT;
#ifdef CONFIG_ZONE_DMA #ifdef CONFIG_ZONE_DMA
if (start <= __pa(MAX_DMA_ADDRESS)) if (start <= __pa(MAX_DMA_ADDRESS))
mem_data[node].num_dma_physpages += mem_data[node].num_dma_physpages +=
...@@ -778,7 +776,6 @@ void __init paging_init(void) ...@@ -778,7 +776,6 @@ void __init paging_init(void)
#endif #endif
for_each_online_node(node) { for_each_online_node(node) {
num_physpages += mem_data[node].num_physpages;
pfn_offset = mem_data[node].min_pfn; pfn_offset = mem_data[node].min_pfn;
#ifdef CONFIG_VIRTUAL_MEM_MAP #ifdef CONFIG_VIRTUAL_MEM_MAP
......
...@@ -545,19 +545,6 @@ int __init register_active_ranges(u64 start, u64 len, int nid) ...@@ -545,19 +545,6 @@ int __init register_active_ranges(u64 start, u64 len, int nid)
return 0; return 0;
} }
static int __init
count_reserved_pages(u64 start, u64 end, void *arg)
{
unsigned long num_reserved = 0;
unsigned long *count = arg;
for (; start < end; start += PAGE_SIZE)
if (PageReserved(virt_to_page(start)))
++num_reserved;
*count += num_reserved;
return 0;
}
int int
find_max_min_low_pfn (u64 start, u64 end, void *arg) find_max_min_low_pfn (u64 start, u64 end, void *arg)
{ {
...@@ -596,7 +583,6 @@ __setup("nolwsys", nolwsys_setup); ...@@ -596,7 +583,6 @@ __setup("nolwsys", nolwsys_setup);
void __init void __init
mem_init (void) mem_init (void)
{ {
long reserved_pages, codesize, datasize, initsize;
pg_data_t *pgdat; pg_data_t *pgdat;
int i; int i;
...@@ -624,18 +610,7 @@ mem_init (void) ...@@ -624,18 +610,7 @@ mem_init (void)
if (pgdat->bdata->node_bootmem_map) if (pgdat->bdata->node_bootmem_map)
free_all_bootmem_node(pgdat); free_all_bootmem_node(pgdat);
reserved_pages = 0; mem_init_print_info(NULL);
efi_memmap_walk(count_reserved_pages, &reserved_pages);
codesize = (unsigned long) _etext - (unsigned long) _stext;
datasize = (unsigned long) _edata - (unsigned long) _etext;
initsize = (unsigned long) __init_end - (unsigned long) __init_begin;
printk(KERN_INFO "Memory: %luk/%luk available (%luk code, %luk reserved, "
"%luk data, %luk init)\n", nr_free_pages() << (PAGE_SHIFT - 10),
num_physpages << (PAGE_SHIFT - 10), codesize >> 10,
reserved_pages << (PAGE_SHIFT - 10), datasize >> 10, initsize >> 10);
/* /*
* For fsyscall entrpoints with no light-weight handler, use the ordinary * For fsyscall entrpoints with no light-weight handler, use the ordinary
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册