arm64: Show three registers per line
authorMatthew Wilcox (Oracle) <willy@infradead.org>
Tue, 20 Apr 2021 17:22:45 +0000 (18:22 +0100)
committerCatalin Marinas <catalin.marinas@arm.com>
Fri, 23 Apr 2021 17:00:51 +0000 (18:00 +0100)
Displaying two registers per line takes 15 lines.  That improves to just
10 lines if we display three registers per line, which reduces the amount
of information lost when oopses are cut off.  It stays within 80 columns
and matches x86-64.

Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org>
Reviewed-by: Kees Cook <keescook@chromium.org>
Acked-by: Will Deacon <will@kernel.org>
Link: https://lore.kernel.org/r/20210420172245.3679077-1-willy@infradead.org
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
arch/arm64/kernel/process.c

index 6aa053462400c52eb753b6447ca0fec1e7b7d9e3..0da0fd4ed1d019a797ab203dbbab87400c9328b8 100644 (file)
@@ -292,13 +292,10 @@ void __show_regs(struct pt_regs *regs)
        i = top_reg;
 
        while (i >= 0) {
-               printk("x%-2d: %016llx ", i, regs->regs[i]);
-               i--;
+               printk("x%-2d: %016llx", i, regs->regs[i]);
 
-               if (i % 2 == 0) {
-                       pr_cont("x%-2d: %016llx ", i, regs->regs[i]);
-                       i--;
-               }
+               while (i-- % 3)
+                       pr_cont(" x%-2d: %016llx", i, regs->regs[i]);
 
                pr_cont("\n");
        }