mm/IA64: prepare for removing num_physpages and simplify mem_init()
Prepare for removing num_physpages and simplify mem_init(). Signed-off-by: Jiang 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: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
committed by
Linus Torvalds
parent
5dc355c146
commit
de4bcddc13
@@ -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)
|
|||||||
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 {
|
|||||||
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
|
|||||||
{
|
{
|
||||||
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)
|
|||||||
#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)
|
|||||||
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);
|
|||||||
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)
|
|||||||
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
|
||||||
|
Reference in New Issue
Block a user