1
0
Fork 0
mirror of synced 2025-03-06 20:59:54 +01:00

riscv: add a warning when physical memory address overflows

The part of physical memory that exceeds the size of the linear mapping
will be discarded. When the system starts up normally, a warning message
will be printed to prevent confusion caused by the mismatch between the
system memory and the actual physical memory.

Signed-off-by: Yunhui Cui <cuiyunhui@bytedance.com>
Reviewed-by: Alexandre Ghiti <alexghiti@rivosinc.com>
Tested-by: Alexandre Ghiti <alexghiti@rivosinc.com>
Link: https://lore.kernel.org/r/20240814062625.19794-1-cuiyunhui@bytedance.com
Signed-off-by: Palmer Dabbelt <palmer@rivosinc.com>
This commit is contained in:
Yunhui Cui 2024-08-14 14:26:25 +08:00 committed by Palmer Dabbelt
parent b6de116e46
commit 101971298b
No known key found for this signature in database
GPG key ID: 2E1319F35FBB1889
2 changed files with 6 additions and 2 deletions

View file

@ -256,8 +256,12 @@ static void __init setup_bootmem(void)
*/
if (IS_ENABLED(CONFIG_64BIT) && IS_ENABLED(CONFIG_MMU)) {
max_mapped_addr = __pa(PAGE_OFFSET) + KERN_VIRT_SIZE;
memblock_cap_memory_range(phys_ram_base,
max_mapped_addr - phys_ram_base);
if (memblock_end_of_DRAM() > max_mapped_addr) {
memblock_cap_memory_range(phys_ram_base,
max_mapped_addr - phys_ram_base);
pr_warn("Physical memory overflows the linear mapping size: region above %pa removed",
&max_mapped_addr);
}
}
/*

Binary file not shown.