MIPS: dump_tlb: Only dump PageGrain if interesting
authorJames Hogan <james.hogan@imgtec.com>
Wed, 15 Jul 2015 15:17:45 +0000 (16:17 +0100)
committerRalf Baechle <ralf@linux-mips.org>
Thu, 3 Sep 2015 10:07:48 +0000 (12:07 +0200)
The PageGrain register may not exist if certain architectural features
aren't present, therefore only print out its value when dumping the TLB
registers if it is expected to contain fields relevant to the TLB.

Fixes: d1e9a4f54735 ("MIPS: Add SysRq operation to dump TLBs on all CPUs")
Reported-by: Joshua Kinard <kumba@gentoo.org>
Reported-by: Maciej W. Rozycki <macro@linux-mips.org>
Signed-off-by: James Hogan <james.hogan@imgtec.com>
Cc: Joshua Kinard <kumba@gentoo.org>
Cc: Maciej W. Rozycki <macro@linux-mips.org>
Cc: linux-mips@linux-mips.org
Patchwork: https://patchwork.linux-mips.org/patch/10723/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
arch/mips/lib/dump_tlb.c

index 519ededbf9a4cc4d6879fdb9856e2076e2506e2f..2ab83be14ffaab2175c8dacfd161adbd6aae9d6d 100644 (file)
@@ -23,7 +23,8 @@ void dump_tlb_regs(void)
        pr_info("EntryLo0 : %0*lx\n", field, read_c0_entrylo0());
        pr_info("EntryLo1 : %0*lx\n", field, read_c0_entrylo1());
        pr_info("Wired    : %0x\n", read_c0_wired());
-       pr_info("PageGrain: %0x\n", read_c0_pagegrain());
+       if (cpu_has_small_pages || cpu_has_rixi || cpu_has_xpa)
+               pr_info("PageGrain: %0x\n", read_c0_pagegrain());
        if (cpu_has_htw) {
                pr_info("PWField  : %0*lx\n", field, read_c0_pwfield());
                pr_info("PWSize   : %0*lx\n", field, read_c0_pwsize());