Thread (9 messages) 9 messages, 4 authors, 2007-08-24

Re: [BUG] 2.6.23-rc3-mm1 kernel BUG at mm/page_alloc.c:2876!

From: Kamalesh Babulal <hidden>
Date: 2007-08-23 17:17:39
Also in: lkml

Mel Gorman wrote:
On (22/08/07 13:50), Andrew Morton didst pronounce:
  
quoted
On Wed, 22 Aug 2007 13:48:00 -0700
Andrew Morton [off-list ref] wrote:

    
quoted
This:
--- a/mm/page_alloc.c~a
+++ a/mm/page_alloc.c
@@ -2814,6 +2814,8 @@ static int __cpuinit process_zones(int c
 	return 0;
 bad:
 	for_each_zone(dzone) {
+		if (!populated_zone(zone))
+			continue;		
 		if (dzone == zone)
 			break;
 		kfree(zone_pcp(dzone, cpu));
_

might help avoid the crash
      
err, make that

    
We're already in the error path at this point and it's going to blow up.
The real problem is kmalloc_node() returning NULL for whatever reason.

  
quoted
--- a/mm/page_alloc.c~a
+++ a/mm/page_alloc.c
@@ -2814,6 +2814,8 @@ static int __cpuinit process_zones(int c
 	return 0;
 bad:
 	for_each_zone(dzone) {
+		if (!populated_zone(dzone))
+			continue;
 		if (dzone == zone)
 			break;
 		kfree(zone_pcp(dzone, cpu));
_


    
  
After applying the patch, the call trace is gone but the kernel bug
is still hit


Memory: 4105840k/4194304k available (4964k kernel code, 88464k reserved, 
948k data, 571k bss, 264k init)
SLUB: Genslabs=12, HWalign=128, Order=0-1, MinObjects=4, CPUs=4, Nodes=16
------------[ cut here ]------------
kernel BUG at mm/page_alloc.c:2878!
cpu 0x0: Vector: 700 (Program Check) at [c0000000005cbbe0]
pc: c0000000004b5160: .setup_per_cpu_pageset+0x24/0x48
lr: c0000000004b5160: .setup_per_cpu_pageset+0x24/0x48
sp: c0000000005cbe60
msr: 8000000000029032
current = 0xc0000000004fd1b0
paca = 0xc0000000004fdd80
pid = 0, comm = swapper
kernel BUG at mm/page_alloc.c:2878!
enter ? for help
[c0000000005cbee0] c0000000004978d8 .start_kernel+0x304/0x3f4
[c0000000005cbf90] c0000000003bef1c .start_here_common+0x54/0x58

-
Kamalesh Babulal




--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help