[PATCH 0/4] powerpc/kdump: Support high crashkernel reservation

Baoquan he bhe at redhat.com
Tue Oct 28 17:23:53 AEDT 2025


Cc kexec mailing list.

On 10/27/25 at 08:43pm, Sourabh Jain wrote:
> Add support for reserving crashkernel memory in higher address ranges
> using the crashkernel=xxM,high command-line option.
> 
> With this feature, most of the crashkernel memory for kdump will be
> reserved in high memory regions, while only a small portion (64 MB) will
> be reserved in low memory for the kdump kernel. This helps free up low
> memory for other components that require allocations in that region.
> 
> For example, if crashkernel=2G,high is specified, the kernel will reserve
> 2 GB of crashkernel memory near the end of system RAM and an additional
> 64 MB of low memory (below 1 GB) for RTAS to function properly.
> 
> Currently, this feature is supported only on PPC64 systems with 64-bit
> RTAS instantiation and Radix MMU enabled.
> 
> Two critical changes were made to support this feature:
> 
>  - CPU feature discovery is now performed before crashkernel
>    reservation. This ensures the MMU type is determined before reserving
>    crashkernel memory. (Patch 01/04)
> 
>  - RTAS instantiation has been moved to 64-bit mode. (Patch 02/04)
> 
> Apply the following patch first, and then apply this patch series:
> https://lore.kernel.org/all/20251024170118.297472-1-sourabhjain@linux.ibm.com/
> 
> Cc: Baoquan he <bhe at redhat.com>
> Cc: Hari Bathini <hbathini at linux.ibm.com>
> Cc: Madhavan Srinivasan <maddy at linux.ibm.com>
> Cc: Mahesh Salgaonkar <mahesh at linux.ibm.com>
> Cc: Michael Ellerman <mpe at ellerman.id.au>
> Cc: Ritesh Harjani (IBM) <ritesh.list at gmail.com>
> Cc: Shivang Upadhyay <shivangu at linux.ibm.com>
> 
> Sourabh Jain (4):
>   powerpc/mmu: do MMU type discovery before crashkernel reservation
>   powerpc: move to 64-bit RTAS
>   powerpc/kdump: consider high crashkernel memory if enabled
>   powerpc/kdump: add support for high crashkernel reservation
> 
>  arch/powerpc/include/asm/book3s/64/mmu.h |  1 +
>  arch/powerpc/include/asm/crash_reserve.h |  8 +++++
>  arch/powerpc/include/asm/kexec.h         |  1 +
>  arch/powerpc/include/asm/mmu.h           |  1 +
>  arch/powerpc/include/asm/rtas.h          | 11 ++++++
>  arch/powerpc/kernel/prom.c               | 28 ++++++++-------
>  arch/powerpc/kernel/prom_init.c          | 26 +++++++++++---
>  arch/powerpc/kernel/rtas.c               |  5 +++
>  arch/powerpc/kernel/rtas_entry.S         | 17 ++++++++-
>  arch/powerpc/kexec/core.c                | 45 +++++++++++++++++-------
>  arch/powerpc/kexec/elf_64.c              | 10 ++++--
>  arch/powerpc/kexec/file_load_64.c        |  5 +--
>  arch/powerpc/kexec/ranges.c              | 24 +++++++++++--
>  arch/powerpc/mm/init_64.c                | 27 ++++++++------
>  14 files changed, 161 insertions(+), 48 deletions(-)
> 
> -- 
> 2.51.0
> 



More information about the Linuxppc-dev mailing list