mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-24 20:54:10 +08:00
sh: fault: modernize printing of kernel messages
- 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>
This commit is contained in:
parent
2fb4706057
commit
eaabf98b09
@ -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);
|
||||
|
Loading…
Reference in New Issue
Block a user