x86, mm: Unifying after_bootmem for 32bit and 64bit
after_bootmem has different meaning in 32bit and 64bit. 32bit: after bootmem is ready 64bit: after bootmem is distroyed Let's merget them make 32bit the same as 64bit. for 32bit, it is mixing alloc_bootmem_pages, and alloc_low_page under after_bootmem is set or not set. alloc_bootmem is just wrapper for memblock for x86. Now we have alloc_low_page() with memblock too. We can drop bootmem path now, and only alloc_low_page only. At the same time, we make alloc_low_page could handle real after_bootmem for 32bit, because alloc_bootmem_pages could fallback to use slab too. At last move after_bootmem set position for 32bit the same as 64bit. Signed-off-by: Yinghai Lu <yinghai@kernel.org> Link: http://lkml.kernel.org/r/1353123563-3103-40-git-send-email-yinghai@kernel.org Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
This commit is contained in:

committed by
H. Peter Anvin

parent
2e8059edb6
commit
4e37a89047
@@ -39,7 +39,6 @@ __ref void *alloc_low_pages(unsigned int num)
|
||||
unsigned long pfn;
|
||||
int i;
|
||||
|
||||
#ifdef CONFIG_X86_64
|
||||
if (after_bootmem) {
|
||||
unsigned int order;
|
||||
|
||||
@@ -47,7 +46,6 @@ __ref void *alloc_low_pages(unsigned int num)
|
||||
return (void *)__get_free_pages(GFP_ATOMIC | __GFP_NOTRACK |
|
||||
__GFP_ZERO, order);
|
||||
}
|
||||
#endif
|
||||
|
||||
if ((pgt_buf_end + num) >= pgt_buf_top) {
|
||||
unsigned long ret;
|
||||
|
Reference in New Issue
Block a user