[PATCH Resend] ARM: kdump: makes second kernel use strict pfn_valid
Will Deacon
will.deacon at arm.com
Mon May 19 09:09:48 PDT 2014
On Mon, May 19, 2014 at 02:54:03AM +0100, Wang Nan wrote:
> When SPARSEMEM and CRASH_DUMP both selected, simple pfn_valid prevents
> the second kernel ioremap first kernel's memory if the address falls
> into second kernel section. This limitation requires the second kernel
> occupies a full section, and elfcorehdr must resides in another section.
>
> This patch makes crash dump kernel use strict pfn_valid, removes such
> limitation.
>
> For example:
>
> For a platform with SECTION_SIZE_BITS == 28 (256MiB) and
> crashkernel=128M at 0x28000000 in kernel cmdline, the second
> kernel is loaded at 0x28000000. Kexec puts elfcorehdr at
> 0x2ff00000, and passes 'elfcorehdr=0x2ff00000 mem=130048K' to
> second kernel. When second kernel start, it tries to use
> ioremap to retrive its elfcorehrd. In this case, elfcodehdr is at the
> same section of the second kernel, pfn_valid will recongnize
> the page as valid, so ioremap will refuse to map it.
So isn't the issue here that you're passing an incorrect mem= parameter
to the crash kernel?
Will
More information about the linux-arm-kernel
mailing list