Kexec on P1020 - "Can't add kernel to addr 0x00000000"
McClintock Matthew-B29882
B29882 at freescale.com
Tue Sep 13 16:10:04 EDT 2011
On Fri, Sep 9, 2011 at 9:36 AM, john hagen <hjagen at gmail.com> wrote:
> Hello,
>
> I'm trying to make use of kexec on a couple of boards, a P1020rdb and
> a custom P1011 board. My first attempts seem to report this "Can't add
> kernel to addr 0x00000000". What is kexec trying to tell me? Looking
> for a pointer here, thanks.
>
> JH
>
> [root at P1020RDB jlhagen]# cat /proc/cmdline
> root=/dev/ram rw crashkernel=128M at 32M console=ttyS0,115200 ramdisk_size=600000
>
> [root at P1020RDB jlhagen]# dmesg | grep -i reser
> Reserving 128MB of memory at 32MB for crashkernel (System RAM: 512MB)
>
> [root at P1020RDB jlhagen]# ls -al /proc/device-tree/memory/
> dr-xr-xr-x 2 root root 0 Jan 1 00:11 .
> dr-xr-xr-x 10 root root 0 Jan 1 00:11 ..
> -r--r--r-- 1 root root 7 Jan 1 00:11 device_type
> -r--r--r-- 1 root root 7 Jan 1 00:11 name
> -r--r--r-- 1 root root 16 Jan 1 00:11 reg
>
> [root at P1020RDB jlhagen]# ./kexec -t uImage-ppc -l uImage-3.0.3
> --dtb=./p1020rdb.dtb
> kernel: 0x4802f008 kernel_size: 24bda4
> Can't add kernel to addr 0x00000000 len 8182336
> Cannot load uImage-3.0.3
This seems wrong since if you are just kexec'ing it does not matter
what the load address is. Something else is setting an overlapping
region that is conflicting or there is an issue. Can you try with a
vmlinuxx or recompile with DEBUG?
> [root at P1020RDB jlhagen]# ./kexec -p -t uImage-ppc uImage-3.0.3
> kernel: 0x4802f008 kernel_size: 24bda4
> Can't add kernel to addr 0x00000000 len 8182336
> Cannot load uImage-3.0.3
You uImage has a hard coded address of 0x0 for the kernel image. It's
saying I can't load the kexec kernel here since it's not in your
crashkernel memory region. Did you run a custom mkimage to modify the
load/entry address of your kexec uImage for kdump?
-M
More information about the kexec
mailing list