mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-25 05:04:09 +08:00
riscv: Introduce PBMT field to PTDUMP
This patch introduces the PBMT field to the PTDUMP, so it can display the memory attributes for NC or IO. Signed-off-by: Yu Chien Peter Lin <peterlin@andestech.com> Reviewed-by: Alexandre Ghiti <alexghiti@rivosinc.com> Tested-by: Alexandre Ghiti <alexghiti@rivosinc.com> Link: https://lore.kernel.org/r/20230921025022.3989723-3-peterlin@andestech.com Signed-off-by: Palmer Dabbelt <palmer@rivosinc.com>
This commit is contained in:
parent
d5d2c264d3
commit
0713ff3371
@ -135,6 +135,12 @@ struct prot_bits {
|
||||
|
||||
static const struct prot_bits pte_bits[] = {
|
||||
{
|
||||
#ifdef CONFIG_64BIT
|
||||
.mask = _PAGE_MTMASK_SVPBMT,
|
||||
.set = "MT(%s)",
|
||||
.clear = " .. ",
|
||||
}, {
|
||||
#endif
|
||||
.mask = _PAGE_SOFT,
|
||||
.set = "RSW(%d)",
|
||||
.clear = " .. ",
|
||||
@ -205,6 +211,16 @@ static void dump_prot(struct pg_state *st)
|
||||
if (val) {
|
||||
if (pte_bits[i].mask == _PAGE_SOFT)
|
||||
sprintf(s, pte_bits[i].set, val >> 8);
|
||||
#ifdef CONFIG_64BIT
|
||||
else if (pte_bits[i].mask == _PAGE_MTMASK_SVPBMT) {
|
||||
if (val == _PAGE_NOCACHE_SVPBMT)
|
||||
sprintf(s, pte_bits[i].set, "NC");
|
||||
else if (val == _PAGE_IO_SVPBMT)
|
||||
sprintf(s, pte_bits[i].set, "IO");
|
||||
else
|
||||
sprintf(s, pte_bits[i].set, "??");
|
||||
}
|
||||
#endif
|
||||
else
|
||||
sprintf(s, "%s", pte_bits[i].set);
|
||||
} else {
|
||||
|
Loading…
Reference in New Issue
Block a user