muram in device tree for mpc8250 in arch/powerpc

James Black jblack547 at gmail.com
Sat Mar 22 07:14:09 EST 2008


>  Is it node_bootmem_map, eidx, or i that is bad?  What is end_pfn?  What is
>  calling alloc_bootmem?

The call starts in init/main.c with paging_init() and ends up in
mm/bootmem.c:alloc_bootmem_node().
I have been moving the printk around trying to find exactly where this
thing fails. It now seems that the problem is also moving. The latest
output looks like it got through the page allocation. I greped the elf
file and the faulting address instruction  0xc0011218 is in strcmp.
[jblack at jblack linux-2.6.24]$ nm vmlinux |grep c001121
c0011210 T strcmp

I've booted several times now and the problem moves with the printk.
But, when I disable early debugging the problem comes back and the
boot hangs or crashes as usual. Here are a couple of outputs that show
it is getting through the pfn allocations. Something isn't declared
right or configured right. But where to look?

I've compiled the kernel with gcc 4.0.0 and  4.2.2 both versions have
the same problem. Should I try the 2.6.25 kernel since the 2.6.19
works just fine. I've stripped the kernel options down almost as far
as I can go.

setup_arch: exit
Zone PFN ranges:
  DMA      134217728 ->    16384
  Normal      16384 ->    16384
Movable zone start PFN for each node
early_node_map[1] active PFN ranges
  2097152: 134217728 ->    16384
Could not find start_pfn for node 0
free_area_init_nodes(): pgdat: c01cadc0
node_bootmem_map(addr): c3ffe000
eidx(size): 16384
i(offset): 0
end_pfn: 16384
goal: 1073741823
preferred: 0
node_bootmem_map(addr): c3ffe000
eidx(size): 16384
i(offset): 0
end_pfn: 16384
goal: 1073741823
preferred: 0
Built 1 zonelists in Zone order, mobility grouping off.  Total pages:
0
Kernel command line: /dev/root=/dev/ram r7 ramdisk_size=4096
Unable to handle kernel paging request for data at address 0x00000000
Faulting instruction address: 0xc0011218
Oops: Kernel access of bad area, sig: 11 [#1]
Aztek Networks cta5000s
NIP: c0011218 LR: c00f0da0 CTR: c01adec4
REGS: c01d3e70 TRAP: 0300   Not tainted  (2.6.24.2)
MSR: 00001032 <ME,IR,DR>  CR: 44042048  XER: 20000000
DAR: 00000000, DSISR: 20000000
TASK = c01c2570[0] 'swapper' THREAD: c01d2000
GPR00: 00000063 c01d3f20 c01c2570 00000000 c0193607 ffffffff c01e2398
00000000
GPR08: 00000000 00000070 c01ccbb0 c07fd07a 24042048 20802010 03fff000
007fff00
GPR16: 03bbcd3e 001a6d3e 02200040 03a16000 007ffeb0 03ff98e4 00000000
00000004
GPR24: 00000000 02400000 40000000 c01d9d14 00000000 c01d3f58 c0193608
c3ffe2f0
Call Trace:
[c01d3f40] [c00f0de0]
[c01d3f50] [c00f0e28]

setup_arch: exit
Zone PFN ranges:
  DMA             0 ->    16384
  Normal      16384 ->    16384
Movable zone start PFN for each node
early_node_map[1] active PFN ranges
    0:        0 ->    16384
node_bootmem_map(addr): c3ffe000
eidx(size): 16384
i(offset): 0
end_pfn: 16384
goal: 1073741823
preferred: 0
__alloc_bootmem_node(): ptr: c01e9000
node_bootmem_map(addr): c3ffe000
eidx(size): 16384
i(offset): 0
end_pfn: 16384
goal: 1073741823
preferred: 0
__alloc_bootmem_node(): ptr: c0131000
node_bootmem_map(addr): c3ffe000
eidx(size): 16384
i(offset): 0
end_pfn: 16384
goal: 1073741823
preferred: 0
__alloc_bootmem_node(): ptr: c0171000
node_bootmem_map(addr): c3ffe000
eidx(size): 16384
i(offset): 0
end_pfn: 16384
goal: 1073741823
preferred: 0
node_bootmem_map(addr): c3ffe000
eidx(size): 16384
i(offset): 0
end_pfn: 16384
goal: 1073741823
preferred: 0
Built 1 zonelists in Zone order, mobility grouping on.  Total pages:
16256
Kernel command line: /deroot=/dev/r�m rw ramdisk_size=4096
Unable to handle kernel paging request for data at address 0x00000000
Faulting instruction address: 0xc0011218
Oops: Kernel access of bad area, sig: 11 [#8193]
Aztek Networks cta5000s
NIP: c0011218 LR: c00f0da0 CTR: c01adec4
REGS: c01d3e70 TRAP: 0300   Not tainted  (2.6.24.2)
MSR: 00001032 <ME,IR,DR>  CR: 44042028  XER: 20000000
DAR: 00000000, DSISR: 20000000
TASK = c01c2570[0] 'swapper' THREAD: c01d2000
GPR00: 00000063 c01d3f20 c01c2570 00000000 c0193607 ffffffff c01e2398
00000000
GPR08: c01a12e0 c01e0000 c0191700 c01e2384 24042028 24886012 03fff000
007fff00
GPR16: 03bbcd3e 001a6d3e 02200040 03a16000 007ffeb0 03ff98e4 00000000
00000004
GPR24: 00000000 02400000 40000000 c01d9d14 00000000 c01d3f58 c0193608
c3bff174
Call Trace:
[c01d3f40] [c00f0de0]
[c01d3f50] [c00f0e28]
[c01d3f80] [c00f0f1c]
[c01d3fa0] [c01adee8]
[c01d3fb0] [c01a9854]
[c01d3fc0] [c01a390c]
[c01d3ff0] [00003438]
Instruction dump:
3884ffff 8c050001 2c000000 4082fff8 38a5ffff 8c040001 2c000000
9c050001
4082fff4 4e800020 38a3ffff 3884ffff <8c650001> 2c830000 8c040001
7c601851
---[ end trace 8640abe69a316dee ]---
Kernel panic - not syncing: Attempted to kill the idle task!
Rebooting in 180 seconds..


More information about the Linuxppc-embedded mailing list