diff options
Diffstat (limited to 'arch/powerpc/mm/init_64.c')
| -rw-r--r-- | arch/powerpc/mm/init_64.c | 17 | 
1 files changed, 8 insertions, 9 deletions
diff --git a/arch/powerpc/mm/init_64.c b/arch/powerpc/mm/init_64.c index 95a45293e5a..c2787bf779c 100644 --- a/arch/powerpc/mm/init_64.c +++ b/arch/powerpc/mm/init_64.c @@ -129,8 +129,7 @@ void pgtable_cache_add(unsigned shift, void (*ctor)(void *))  	align = max_t(unsigned long, align, minalign);  	name = kasprintf(GFP_KERNEL, "pgtable-2^%d", shift);  	new = kmem_cache_create(name, table_size, align, 0, ctor); -	PGT_CACHE(shift) = new; - +	pgtable_cache[shift - 1] = new;  	pr_debug("Allocated pgtable cache for order %d\n", shift);  } @@ -263,19 +262,14 @@ static __meminit void vmemmap_list_populate(unsigned long phys,  	vmemmap_list = vmem_back;  } -int __meminit vmemmap_populate(struct page *start_page, -			       unsigned long nr_pages, int node) +int __meminit vmemmap_populate(unsigned long start, unsigned long end, int node)  { -	unsigned long start = (unsigned long)start_page; -	unsigned long end = (unsigned long)(start_page + nr_pages);  	unsigned long page_size = 1 << mmu_psize_defs[mmu_vmemmap_psize].shift;  	/* Align to the page size of the linear mapping. */  	start = _ALIGN_DOWN(start, page_size); -	pr_debug("vmemmap_populate page %p, %ld pages, node %d\n", -		 start_page, nr_pages, node); -	pr_debug(" -> map %lx..%lx\n", start, end); +	pr_debug("vmemmap_populate %lx..%lx, node %d\n", start, end, node);  	for (; start < end; start += page_size) {  		void *p; @@ -297,5 +291,10 @@ int __meminit vmemmap_populate(struct page *start_page,  	return 0;  } + +void vmemmap_free(unsigned long start, unsigned long end) +{ +} +  #endif /* CONFIG_SPARSEMEM_VMEMMAP */  |