[PATCH] Fix powerpc bad_page_fault output (Re: 2.6.16-rc5-mm1)

From: Olof Johansson
Date: Wed Mar 01 2006 - 11:43:45 EST

On Tue, Feb 28, 2006 at 03:56:24PM -0800, Martin Bligh wrote:
> Andrew Morton wrote:
> >ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.16-rc5/2.6.16-rc5-mm1/
> New panic on IBM power4 lpar of P690. 2.6.16-rc5-git3 is OK.
> (config:
> http://ftp.kernel.org/pub/linux/kernel/people/mbligh/config/abat/power4)
> http://test.kernel.org/24165/debug/console.log

For what it's worth, this is a NULL pointer dereference in the RCU

Seems that the human-readible parts are printed at a differnet printk level
(well, _at_ a level), so they fell off. Not good.

Andrew and/or Paulus, see patch below.




It seems that the die() output is printk'd without any prink level,
so some distros will log the register dumps and the human readible
format differently.

(I.e. see http://test.kernel.org/24165/debug/console.log, which lacks
the KERN_ALERT parts)

Changing the die() output to include a level will likely confuse users
that currently rely on getting the output where they're getting it,
so instead remove it from the bad_page_fault() output.

Signed-off-by: Olof Johansson <olof@xxxxxxxxx>

diff --git a/arch/powerpc/mm/fault.c b/arch/powerpc/mm/fault.c
index ec4adcb..fee050a 100644
--- a/arch/powerpc/mm/fault.c
+++ b/arch/powerpc/mm/fault.c
@@ -389,7 +389,7 @@ void bad_page_fault(struct pt_regs *regs

/* kernel has accessed a bad area */

- printk(KERN_ALERT "Unable to handle kernel paging request for ");
+ printk("Unable to handle kernel paging request for ");
switch (regs->trap) {
case 0x300:
case 0x380:
@@ -402,8 +402,7 @@ void bad_page_fault(struct pt_regs *regs
printk("unknown fault\n");
- printk(KERN_ALERT "Faulting instruction address: 0x%08lx\n",
- regs->nip);
+ printk("Faulting instruction address: 0x%08lx\n", regs->nip);

die("Kernel access of bad area", regs, sig);
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/