mirror of
https://github.com/torvalds/linux.git
synced 2024-11-22 12:11:40 +00:00
mm: don't use alloc_bootmem_low() where not strictly needed
Since alloc_bootmem() will never return inaccessible (via virtual addressing) memory anyway, using the ..._low() variant only makes sense when the physical address range of the allocated memory must fulfill further constraints, espacially since on 64-bits (or more generally in all cases where the pools the two variants allocate from are than the full available range. Probably the use in alloc_tce_table() could also be eliminated (based on code inspection of pci-calgary_64.c), but that seems too risky given I know nothing about that hardware and have no way to test it. Signed-off-by: Jan Beulich <jbeulich@novell.com> Cc: Ingo Molnar <mingo@elte.hu> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: "H. Peter Anvin" <hpa@zytor.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
4481374ce8
commit
3c1596efe1
@ -1331,7 +1331,7 @@ void __init e820_reserve_resources(void)
|
||||
struct resource *res;
|
||||
u64 end;
|
||||
|
||||
res = alloc_bootmem_low(sizeof(struct resource) * e820.nr_map);
|
||||
res = alloc_bootmem(sizeof(struct resource) * e820.nr_map);
|
||||
e820_res = res;
|
||||
for (i = 0; i < e820.nr_map; i++) {
|
||||
end = e820.map[i].addr + e820.map[i].size - 1;
|
||||
|
@ -84,7 +84,7 @@ static pmd_t * __init one_md_table_init(pgd_t *pgd)
|
||||
#ifdef CONFIG_X86_PAE
|
||||
if (!(pgd_val(*pgd) & _PAGE_PRESENT)) {
|
||||
if (after_bootmem)
|
||||
pmd_table = (pmd_t *)alloc_bootmem_low_pages(PAGE_SIZE);
|
||||
pmd_table = (pmd_t *)alloc_bootmem_pages(PAGE_SIZE);
|
||||
else
|
||||
pmd_table = (pmd_t *)alloc_low_page();
|
||||
paravirt_alloc_pmd(&init_mm, __pa(pmd_table) >> PAGE_SHIFT);
|
||||
@ -116,7 +116,7 @@ static pte_t * __init one_page_table_init(pmd_t *pmd)
|
||||
#endif
|
||||
if (!page_table)
|
||||
page_table =
|
||||
(pte_t *)alloc_bootmem_low_pages(PAGE_SIZE);
|
||||
(pte_t *)alloc_bootmem_pages(PAGE_SIZE);
|
||||
} else
|
||||
page_table = (pte_t *)alloc_low_page();
|
||||
|
||||
|
@ -164,7 +164,7 @@ int __init firmware_map_add_early(u64 start, u64 end, const char *type)
|
||||
{
|
||||
struct firmware_map_entry *entry;
|
||||
|
||||
entry = alloc_bootmem_low(sizeof(struct firmware_map_entry));
|
||||
entry = alloc_bootmem(sizeof(struct firmware_map_entry));
|
||||
if (WARN_ON(!entry))
|
||||
return -ENOMEM;
|
||||
|
||||
|
@ -619,7 +619,7 @@ __register_nosave_region(unsigned long start_pfn, unsigned long end_pfn,
|
||||
BUG_ON(!region);
|
||||
} else
|
||||
/* This allocation cannot fail */
|
||||
region = alloc_bootmem_low(sizeof(struct nosave_region));
|
||||
region = alloc_bootmem(sizeof(struct nosave_region));
|
||||
region->start_pfn = start_pfn;
|
||||
region->end_pfn = end_pfn;
|
||||
list_add_tail(®ion->list, &nosave_regions);
|
||||
|
Loading…
Reference in New Issue
Block a user