OSDN Git Service

sh: fault: modernize printing of kernel messages
authorGeert Uytterhoeven <geert+renesas@glider.be>
Thu, 4 Jun 2020 23:46:48 +0000 (16:46 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Fri, 5 Jun 2020 02:06:21 +0000 (19:06 -0700)
  - Convert from printk() to pr_*(),
  - Add missing continuations,
  - Use "%llx" to format u64,
  - Join multiple prints in show_fault_oops() into a single print.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Signed-off-by: Mike Rapoport <rppt@linux.ibm.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Cc: Arnd Bergmann <arnd@arndb.de>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Brian Cain <bcain@codeaurora.org>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Christophe Leroy <christophe.leroy@c-s.fr>
Cc: Fenghua Yu <fenghua.yu@intel.com>
Cc: Guan Xuetao <gxt@pku.edu.cn>
Cc: James Morse <james.morse@arm.com>
Cc: Jonas Bonn <jonas@southpole.se>
Cc: Julien Thierry <julien.thierry.kdev@gmail.com>
Cc: Ley Foon Tan <ley.foon.tan@intel.com>
Cc: Marc Zyngier <maz@kernel.org>
Cc: Michael Ellerman <mpe@ellerman.id.au>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Rich Felker <dalias@libc.org>
Cc: Russell King <linux@armlinux.org.uk>
Cc: Stafford Horne <shorne@gmail.com>
Cc: Stefan Kristiansson <stefan.kristiansson@saunalahti.fi>
Cc: Suzuki K Poulose <suzuki.poulose@arm.com>
Cc: Tony Luck <tony.luck@intel.com>
Cc: Will Deacon <will@kernel.org>
Cc: Yoshinori Sato <ysato@users.sourceforge.jp>
Link: http://lkml.kernel.org/r/20200414153455.21744-10-rppt@kernel.org
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
arch/sh/mm/fault.c

index 5f23d79..ffcdf8f 100644 (file)
@@ -47,10 +47,10 @@ static void show_pte(struct mm_struct *mm, unsigned long addr)
                        pgd = swapper_pg_dir;
        }
 
-       printk(KERN_ALERT "pgd = %p\n", pgd);
+       pr_alert("pgd = %p\n", pgd);
        pgd += pgd_index(addr);
-       printk(KERN_ALERT "[%08lx] *pgd=%0*Lx", addr,
-              (u32)(sizeof(*pgd) * 2), (u64)pgd_val(*pgd));
+       pr_alert("[%08lx] *pgd=%0*llx", addr, (u32)(sizeof(*pgd) * 2),
+                (u64)pgd_val(*pgd));
 
        do {
                pud_t *pud;
@@ -61,33 +61,33 @@ static void show_pte(struct mm_struct *mm, unsigned long addr)
                        break;
 
                if (pgd_bad(*pgd)) {
-                       printk("(bad)");
+                       pr_cont("(bad)");
                        break;
                }
 
                pud = pud_offset(pgd, addr);
                if (PTRS_PER_PUD != 1)
-                       printk(", *pud=%0*Lx", (u32)(sizeof(*pud) * 2),
-                              (u64)pud_val(*pud));
+                       pr_cont(", *pud=%0*llx", (u32)(sizeof(*pud) * 2),
+                               (u64)pud_val(*pud));
 
                if (pud_none(*pud))
                        break;
 
                if (pud_bad(*pud)) {
-                       printk("(bad)");
+                       pr_cont("(bad)");
                        break;
                }
 
                pmd = pmd_offset(pud, addr);
                if (PTRS_PER_PMD != 1)
-                       printk(", *pmd=%0*Lx", (u32)(sizeof(*pmd) * 2),
-                              (u64)pmd_val(*pmd));
+                       pr_cont(", *pmd=%0*llx", (u32)(sizeof(*pmd) * 2),
+                               (u64)pmd_val(*pmd));
 
                if (pmd_none(*pmd))
                        break;
 
                if (pmd_bad(*pmd)) {
-                       printk("(bad)");
+                       pr_cont("(bad)");
                        break;
                }
 
@@ -96,11 +96,11 @@ static void show_pte(struct mm_struct *mm, unsigned long addr)
                        break;
 
                pte = pte_offset_kernel(pmd, addr);
-               printk(", *pte=%0*Lx", (u32)(sizeof(*pte) * 2),
-                      (u64)pte_val(*pte));
+               pr_cont(", *pte=%0*llx", (u32)(sizeof(*pte) * 2),
+                       (u64)pte_val(*pte));
        } while (0);
 
-       printk("\n");
+       pr_cont("\n");
 }
 
 static inline pmd_t *vmalloc_sync_one(pgd_t *pgd, unsigned long address)
@@ -188,14 +188,12 @@ show_fault_oops(struct pt_regs *regs, unsigned long address)
        if (!oops_may_print())
                return;
 
-       printk(KERN_ALERT "BUG: unable to handle kernel ");
-       if (address < PAGE_SIZE)
-               printk(KERN_CONT "NULL pointer dereference");
-       else
-               printk(KERN_CONT "paging request");
-
-       printk(KERN_CONT " at %08lx\n", address);
        printk(KERN_ALERT "PC:");
+       pr_alert("BUG: unable to handle kernel %s at %08lx\n",
+                address < PAGE_SIZE ? "NULL pointer dereference"
+                                    : "paging request",
+                address);
+       pr_alert("PC:");
        printk_address(regs->pc, 1);
 
        show_pte(NULL, address);