[RFC PATCH V3 43/43] riscv: Fixup address space overlay of print_mlk

guoren
2025-03-25T12:27:10Z

If phyical memory is 1GiB for ilp32 linux, then print_mlk would be:
lowmem : 0xc0000000 - 0x00000000 ( 1024 MB)

After fixup:
lowmem : 0xc0000000 - 0xffffffff ( 1024 MB)

Signed-off-by: Guo Ren (Alibaba DAMO Academy) <guoren@kernel.org>
---
arch/riscv/mm/init.c | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/arch/riscv/mm/init.c b/arch/riscv/mm/init.c
index 3cdbb033860e..e09286d4916a 100644
--- a/arch/riscv/mm/init.c
+++ b/arch/riscv/mm/init.c
@@ -105,26 +105,26 @@ static void __init zone_sizes_init(void)

static inline void print_mlk(char *name, unsigned long b, unsigned long t)
{
- pr_notice("%12s : 0x%08lx - 0x%08lx (%4ld kB)\n", name, b, t,
+ pr_notice("%12s : 0x%08lx - 0x%08lx (%4ld kB)\n", name, b, t - 1,
(((t) - (b)) >> LOG2_SZ_1K));
}

static inline void print_mlm(char *name, unsigned long b, unsigned long t)
{
- pr_notice("%12s : 0x%08lx - 0x%08lx (%4ld MB)\n", name, b, t,
+ pr_notice("%12s : 0x%08lx - 0x%08lx (%4ld MB)\n", name, b, t - 1,
(((t) - (b)) >> LOG2_SZ_1M));
}

static inline void print_mlg(char *name, unsigned long b, unsigned long t)
{
- pr_notice("%12s : 0x%08lx - 0x%08lx (%4ld GB)\n", name, b, t,
+ pr_notice("%12s : 0x%08lx - 0x%08lx (%4ld GB)\n", name, b, t - 1,
(((t) - (b)) >> LOG2_SZ_1G));
}

#if BITS_PER_LONG == 64
static inline void print_mlt(char *name, unsigned long b, unsigned long t)
{
- pr_notice("%12s : 0x%08lx - 0x%08lx (%4ld TB)\n", name, b, t,
+ pr_notice("%12s : 0x%08lx - 0x%08lx (%4ld TB)\n", name, b, t - 1,
(((t) - (b)) >> LOG2_SZ_1T));
}
#else
--
2.40.1