Can't load bzImage crashkernel on xen system with 32 bit kernel
WANG Chao
chaowang at redhat.com
Thu Jul 10 00:47:13 PDT 2014
Hi, Anthony
On 07/08/14 at 11:34am, Anthony Wright wrote:
> After successfully modifying kexec-tools to get it to load a crashkernel
> on a standard 32 bit linux 3.10.17 kernel, I tried to get it to load the
> same crashkernel on the same 32 bit linux kernel running under xen
> 4.4.0, but get the error "Cannot load <kernel-path>".
>
> I've patched the code to include some diagnostics, and the problem is
> caused by add_memmap() reporting that it's been called with overlapping
> memory.
>
> It's called twice, the first time it's called with:
> address: 0x00000000
> size: 0x0009f800
> type: 0
>
> This comes from info->backup_src_*
>
> The second time it is passed
> address: 0x00000000
> size: 0x00000000
> type: 0
>
> This is derived from the crash_reserved_mem[] array, which has one
> element with the values:
> start: 0x0000000000000000 (16 0's)
> end: 0xffffffffffffffff (16 f's)
Why it looks like that? crashkernel memory region shouldn't be that
extreme.
Maybe there's something wrong when it retrieves crashkernel reserved
region. How you does your /proc/iomem look like?
Turn on debug option (-d) would be helpful too.
>
> The problem isn't caused by the zero size because the maths in
> add_memmap, uses size to calculate end which overflows back again, and
> (partially) cancels out the error. The problem is caused by the two
> memory blocks being based at 0x0, causing the blocks to overlap.
The overflow issue should be easy to fix once we figure out why the
crash_reserved_mem[] has a element like that.
Thanks
WANG Chao
>
> I'm not sure what the correct functionality should be.
>
> Thanks,
>
> Anthony.
>
>
> --
> Founder, Overnet Data Ltd
> +44-1604-807545
> www.overnetdata.com
>
> _______________________________________________
> kexec mailing list
> kexec at lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/kexec
More information about the kexec
mailing list