Reputation: 337
I am facing a Kernel Panic issue while booting an armv7 board with linux-3.0 kernel
. The Error message is as follows:
Memory policy: ECC disabled, Data cache writealloc
<0>Kernel panic - not syncing: ERROR: Failed to allocate 0x1000 bytes below 0x0.
I think this issue is related to some config in menuconfig but not able to get which one is exactly giving the problem. When I tried to trace the function which is causing this , I got the following call trace.
paging_init -> early_alloc.clone.2 -> memblock_alloc -> memblock_alloc_base -> __memblock_alloc_base -> memblock_align_up -> memblock_find_base -> __memblock_alloc_base -> panic
.
Boot parameters through uboot:
bootargs=console=ttyS1,115200n8 root=/dev/nfs ip=1.2.3.4 nfsroot=10.22.33.27:/tftpboot/arm/ rootwait rw
Upvotes: 1
Views: 617
Reputation: 678
It looks like that your kernel is trying to load on the higher address than it is actually allocated. So you need to look into the DTS file (if using the device tree) or boot parameters which you are passing from the u-boot prompt.
You can check the memory allocation from kernel menuconfig, Kernel Features ---> Memory split ---> 3G/1G user/kernel split.
Also please tell the processor on which you are facing this error.
P.S.: Assuming that LOADADDR for compiling the kernel image (uImage/bZimage) and DDR configuration is correct.
Upvotes: 2