[RFC PATCH 0/3] powerpc/fadump: pass additional args to dump capture kernel

Hari Bathini hbathini at linux.ibm.com
Wed Dec 6 07:18:32 AEDT 2023

While fadump is a more reliable alternative to kdump dump capturing
method, it doesn't support passing additional parameters. Having
such support is desirable for two major reasons:

  1. It helps minimize the memory consumption of fadump dump capture
     kernel by disabling features that consume considerable amount of
     memory but have little significance for dump capture environment
     (eg. numa, cma, cgroup, etc.)
   2. It helps disable such features/components in dump capture kernel
      that are unstable and/or are being debugged.

This patch series adds support to pass additional parameters to fadump
capture kernel to make it more desirable. For this, a dedicated area
is passed between production kernel and capture kerenl to pass these
additional parameters. This support is enabled only on pseries as of
now. The dedicated area is referred to as RTAS_FADUMP_PARAM_AREA.

In radix MMU mode, this dedicated area can be anywhere but in case of
hash MMU, it can only be in the first memory block to be accessible
during early boot. Enabling this feature support in both radix and
hash MMU modes but in hash MMU only when RMA size is 768MB or more
to avoid complex memory real estate with FW components.

The first patch adds support for multiple boot memory regions to make
addition of any new region types simpler. The second patch sets up the
parameter (dedicated) area to be passed to the capture kernel.
/sys/kernel/fadump/bootargs_append is exported to the userspace to
specify the additional parameters to be passed to the capture kernel.
The last patch appends the parameters to bootargs during capture
kernel boot.

Hari Bathini (2):
  powerpc/fadump: pass additional parameters to dump capture kernel
  powerpc/fadump: pass additional parameters when fadump is active

Sourabh Jain (1):
  powerpc/pseries/fadump: add support for multiple boot memory regions

 arch/powerpc/include/asm/fadump-internal.h   |   5 +-
 arch/powerpc/include/asm/fadump.h            |   2 +
 arch/powerpc/kernel/fadump.c                 | 141 +++++++--
 arch/powerpc/kernel/prom.c                   |   3 +
 arch/powerpc/platforms/powernv/opal-fadump.c |  14 +-
 arch/powerpc/platforms/pseries/rtas-fadump.c | 293 +++++++++++++------
 arch/powerpc/platforms/pseries/rtas-fadump.h |  29 +-
 7 files changed, 360 insertions(+), 127 deletions(-)


More information about the Linuxppc-dev mailing list