[PATCH v4 0/4] kexec-tools, x86: E820 memmap pass for kdump

Linn Crosetto linn at hp.com
Wed Mar 19 13:57:57 EDT 2014


On Wed, Mar 19, 2014 at 04:03:57PM +0800, WANG Chao wrote:
> Hi, All
> 
> When kaslr comes in and kdump is broken, it seems about the right time to use
> E820 instead of memmap=exactmap to pass memmap for kdump for the default memmap
> passing mechanism:
> http://lists.infradead.org/pipermail/kexec/2014-February/011048.html
> 
> Unfortunately, saved_max_pfn still got its user out there (calgry pci, it looks
> like the only one). So for backward compatibility, I'm introducing a new option
> --pass-memmap-cmdline to force kexec-tools to pass memmap=exactmap, the old way.
> 
> Any comment is appreciate!
> 
> v3->v4:
> Linn: check return value of malloc (use xmalloc)
> me: fix dbgprintf_mem_range
> 
> v2->v3:
> Linn:
>  - do not free sd (setup_data) buffer
>  - reuse code in setup_e820 and setup_e820_ext
> 
> v1->v2:
> 
> Vivek:
>  - Use function instead of macro for dbgprint_mem_range
>  - Do not pass reserved memory range for kdump. It could addressed later
>    separately.
> 
> WANG Chao (4):
>   cleanup: add dbgprint_mem_range function
>   x86: Store memory ranges globally used for crash kernel to boot into
>   x86: add --pass-memmap-cmdline option
>   x86: Pass memory range via E820 for kdump
> 
>  kexec/arch/i386/crashdump-x86.c        | 157 ++++++++++++++++--------------
>  kexec/arch/i386/crashdump-x86.h        |   6 +-
>  kexec/arch/i386/include/arch/options.h |   2 +
>  kexec/arch/i386/kexec-x86-common.c     |   6 +-
>  kexec/arch/i386/kexec-x86.c            |   4 +
>  kexec/arch/i386/kexec-x86.h            |   1 +
>  kexec/arch/i386/x86-linux-setup.c      | 171 ++++++++++++++++++++++-----------
>  kexec/arch/i386/x86-linux-setup.h      |   1 +
>  kexec/arch/x86_64/kexec-x86_64.c       |   5 +
>  kexec/kexec.c                          |  10 ++
>  kexec/kexec.h                          |   1 +
>  11 files changed, 231 insertions(+), 133 deletions(-)

Thanks for the patches. Tested (adding a fix provided by Dave Young for
http://lists.infradead.org/pipermail/kexec/2014-March/011262.html) and
successful with both kexec and kdump, both with and without
--pass-memmap-cmdline.




More information about the kexec mailing list