Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

powerpc/ptdump: Fix display a BAT's size unit

We have wrong units on BAT's sizes (G instead of M, M instead of ...)

---[ Instruction Block Address Translation ]---
0: 0xc0000000-0xc03fffff 0x00000000 4G Kernel x m
1: 0xc0400000-0xc05fffff 0x00400000 2G Kernel x m
2: 0xc0600000-0xc06fffff 0x00600000 1G Kernel x m
3: 0xc0700000-0xc077ffff 0x00700000 512M Kernel x m
4: 0xc0780000-0xc079ffff 0x00780000 128M Kernel x m
5: 0xc07a0000-0xc07bffff 0x007a0000 128M Kernel x m
6: -
7: -

This is because pt_dump_size() expects a size in Kbytes but
bat_show_603() gives the size in bytes.

To avoid risk of confusion, change pt_dump_size() to take bytes.

Signed-off-by: Christophe Leroy <christophe.leroy@csgroup.eu>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/f16c30f5c9185a63335322cf1a8b22f189d335ef.1637922595.git.christophe.leroy@csgroup.eu

authored by

Christophe Leroy and committed by
Michael Ellerman
cdc81aec 7dfbfb87

+2 -2
+2 -2
arch/powerpc/mm/ptdump/ptdump.c
··· 123 123 124 124 void pt_dump_size(struct seq_file *m, unsigned long size) 125 125 { 126 - static const char units[] = "KMGTPE"; 126 + static const char units[] = " KMGTPE"; 127 127 const char *unit = units; 128 128 129 129 /* Work out what appropriate unit to use */ ··· 176 176 177 177 pt_dump_seq_printf(st->seq, REG "-" REG " ", st->start_address, addr - 1); 178 178 pt_dump_seq_printf(st->seq, " " REG " ", st->start_pa); 179 - pt_dump_size(st->seq, (addr - st->start_address) >> 10); 179 + pt_dump_size(st->seq, addr - st->start_address); 180 180 } 181 181 182 182 static void note_prot_wx(struct pg_state *st, unsigned long addr)