mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-15 08:14:15 +08:00
ARM: move initialization of the high_memory variable earlier
Some upcoming changes must know the VMALLOC_START value, which is based on high_memory, before bootmem_init() is called. The best location to set it is in sanity_check_meminfo() where the needed computation is already done, and in the non MMU case it is trivial to do now that the meminfo array is already sorted at that point. Signed-off-by: Nicolas Pitre <nicolas.pitre@linaro.org>
This commit is contained in:
parent
27a3f0e91b
commit
55a8173cfe
@ -381,8 +381,6 @@ void __init bootmem_init(void)
|
||||
*/
|
||||
arm_bootmem_free(min, max_low, max_high);
|
||||
|
||||
high_memory = __va(((phys_addr_t)max_low << PAGE_SHIFT) - 1) + 1;
|
||||
|
||||
/*
|
||||
* This doesn't seem to be used by the Linux memory manager any
|
||||
* more, but is used by ll_rw_block. If we can get rid of it, we
|
||||
|
@ -860,6 +860,7 @@ void __init sanity_check_meminfo(void)
|
||||
}
|
||||
#endif
|
||||
meminfo.nr_banks = j;
|
||||
high_memory = __va(lowmem_limit - 1) + 1;
|
||||
memblock_set_current_limit(lowmem_limit);
|
||||
}
|
||||
|
||||
|
@ -29,6 +29,8 @@ void __init arm_mm_memblock_reserve(void)
|
||||
|
||||
void __init sanity_check_meminfo(void)
|
||||
{
|
||||
phys_addr_t end = bank_phys_end(&meminfo.bank[meminfo.nr_banks - 1]);
|
||||
high_memory = __va(end - 1) + 1;
|
||||
}
|
||||
|
||||
/*
|
||||
|
Loading…
Reference in New Issue
Block a user