Re: 2.6.15-mm2

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, 9 Jan 2006, Jesper Juhl wrote:
> On 1/9/06, Dave Jones <[email protected]> wrote:
> > On Mon, Jan 09, 2006 at 06:47:01PM +0100, Jesper Juhl wrote:
> >
> >  > Here's what bad_page printed for me :
> >  >
> >  > Bad page state in process 'kded'
> >  > [<c0103e77>] dump_stack+0x17/0x20
> >  > [<c0148999>] bad_page+0x69/0x160
> >
> > Odd, there should be more state between the 'Bad page'
> > and the backtrace.
> >
> >     printk(KERN_EMERG "Bad page state in process '%s'\n"
> >                 "page:%p flags:0x%0*lx mapping:%p mapcount:%d count:%d\n"
> >                 "Trying to fix it up, but a reboot is needed\n"
> >
> > Did you aggressively trim that, or did it for some
> > reason not get printed ?
> >
> 
> I did not trim that.
> 
> All I did was add
> 
>  printk(KERN_EMERG "we hit bad page, looping forever\n");
>  while (1) {
>     mdelay(1000);
>  }
> 
> to the end of bad_page()

I'm afraid someone has recently "tidied up" bad_page, and missed out
the most interesting KERN_EMERG of all.  No promises that this will
actually help us more than the backtrace you've sent, but please give
it another go with patch below applied.  Andrew, please pass along...


Restore KERN_EMERG to each line printed by bad_page.

Signed-off-by: Hugh Dickins <[email protected]>

--- 2.6.15-mm2/mm/page_alloc.c	2006-01-07 14:05:58.000000000 +0000
+++ linux/mm/page_alloc.c	2006-01-09 18:13:00.000000000 +0000
@@ -137,9 +137,9 @@ static inline int bad_range(struct zone 
 static void bad_page(struct page *page)
 {
 	printk(KERN_EMERG "Bad page state in process '%s'\n"
-		"page:%p flags:0x%0*lx mapping:%p mapcount:%d count:%d\n"
-		"Trying to fix it up, but a reboot is needed\n"
-		"Backtrace:\n",
+		KERN_EMERG "page:%p flags:0x%0*lx mapping:%p mapcount:%d count:%d\n"
+		KERN_EMERG "Trying to fix it up, but a reboot is needed\n"
+		KERN_EMERG "Backtrace:\n",
 		current->comm, page, (int)(2*sizeof(unsigned long)),
 		(unsigned long)page->flags, page->mapping,
 		page_mapcount(page), page_count(page));
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux