mirror of
https://github.com/adulau/aha.git
synced 2024-12-28 19:56:18 +00:00
x86: unify page fault oops printing
This changes the oops dumping format for page faults to be similar between X86_32 and 64. This is the first user of printk_address on X86_32. Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com> Signed-off-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
This commit is contained in:
parent
b3279c7fd7
commit
19f0dda91e
2 changed files with 12 additions and 9 deletions
|
@ -340,15 +340,15 @@ static void show_fault_oops(struct pt_regs *regs, unsigned long error_code,
|
|||
"(uid: %d)\n", current->uid);
|
||||
}
|
||||
#endif
|
||||
printk(KERN_ALERT "BUG: unable to handle kernel ");
|
||||
if (address < PAGE_SIZE)
|
||||
printk(KERN_ALERT "BUG: unable to handle kernel NULL "
|
||||
"pointer dereference");
|
||||
printk(KERN_CONT "NULL pointer dereference");
|
||||
else
|
||||
printk(KERN_ALERT "BUG: unable to handle kernel paging"
|
||||
" request");
|
||||
printk(" at virtual address %08lx\n", address);
|
||||
printk(KERN_ALERT "printing ip: %08lx ", regs->ip);
|
||||
printk(KERN_CONT "paging request");
|
||||
printk(KERN_CONT " at %08lx\n", address);
|
||||
|
||||
printk(KERN_ALERT "IP:");
|
||||
printk_address(regs->ip, 1);
|
||||
dump_pagetable(address);
|
||||
}
|
||||
|
||||
|
|
|
@ -296,11 +296,14 @@ static int is_f00f_bug(struct pt_regs *regs, unsigned long address)
|
|||
static void show_fault_oops(struct pt_regs *regs, unsigned long error_code,
|
||||
unsigned long address)
|
||||
{
|
||||
printk(KERN_ALERT "BUG: unable to handle kernel ");
|
||||
if (address < PAGE_SIZE)
|
||||
printk(KERN_ALERT "Unable to handle kernel NULL pointer dereference");
|
||||
printk(KERN_CONT "NULL pointer dereference");
|
||||
else
|
||||
printk(KERN_ALERT "Unable to handle kernel paging request");
|
||||
printk(" at %016lx RIP: \n" KERN_ALERT, address);
|
||||
printk(KERN_CONT "paging request");
|
||||
printk(KERN_CONT " at %016lx\n", address);
|
||||
|
||||
printk(KERN_ALERT "IP:");
|
||||
printk_address(regs->ip, 1);
|
||||
dump_pagetable(address);
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue