Resolves: https://issues.redhat.com/browse/RHEL-103429 Upstream: rhkdump/kdump-utils Conflict: Need manually edit kdump.sysconfig files commit ddb0bab1f7e1e43a802993aadad03f85a3c045a9 Author: Baoquan He <bhe@redhat.com> Date: Wed Jun 25 23:30:24 2025 +0800 sysconfig: disable kfence in kdump kernel In the current fedora and RHEL, below config items related to kfence feature are set by default: === CONFIG_HAVE_ARCH_KFENCE=y CONFIG_KFENCE=y CONFIG_KFENCE_SAMPLE_INTERVAL=100 CONFIG_KFENCE_NUM_OBJECTS=255 CONFIG_KFENCE_STRESS_TEST_FAULTS=0 CONFIG_KFENCE_KUNIT_TEST=m === With them set, on x86_64, it will cost 2M extra memory used for kfence when page size if 4K; while on arm64 with 64K page size, it will cost 32M extra memory. This doesn't take memory cost of initializing and running kfence itself into account, here only saying the kfence objects and guarded pages. However, it doesn't make any sense to have kfence in a kdump kernel. Hence, disable kfence in kdump kernel to save crashkernel memory. Signed-off-by: Baoquan He <bhe@redhat.com>
54 lines
2.3 KiB
Plaintext
54 lines
2.3 KiB
Plaintext
# Kernel Version string for the -kdump kernel, such as 2.6.13-1544.FC5kdump
|
|
# If no version is specified, then the init script will try to find a
|
|
# kdump kernel with the same version number as the running kernel.
|
|
KDUMP_KERNELVER=""
|
|
|
|
# The kdump commandline is the command line that needs to be passed off to
|
|
# the kdump kernel. This will likely match the contents of the grub kernel
|
|
# line. For example:
|
|
# KDUMP_COMMANDLINE="ro root=LABEL=/"
|
|
# Dracut depends on proper root= options, so please make sure that appropriate
|
|
# root= options are copied from /proc/cmdline. In general it is best to append
|
|
# command line options using "KDUMP_COMMANDLINE_APPEND=".
|
|
# If a command line is not specified, the default will be taken from
|
|
# /proc/cmdline
|
|
KDUMP_COMMANDLINE=""
|
|
|
|
# This variable lets us remove arguments from the current kdump commandline
|
|
# as taken from either KDUMP_COMMANDLINE above, or from /proc/cmdline
|
|
# NOTE: some arguments such as crashkernel will always be removed
|
|
KDUMP_COMMANDLINE_REMOVE="hugepages hugepagesz slub_debug quiet log_buf_len swiotlb cma hugetlb_cma ignition.firstboot"
|
|
|
|
# This variable lets us append arguments to the current kdump commandline
|
|
# after processed by KDUMP_COMMANDLINE_REMOVE
|
|
KDUMP_COMMANDLINE_APPEND="irqpoll nr_cpus=1 reset_devices novmcoredd cma=0 hugetlb_cma=0 kfence.sample_interval=0"
|
|
|
|
# Any additional kexec arguments required. In most situations, this should
|
|
# be left empty
|
|
#
|
|
# Example:
|
|
# KEXEC_ARGS="--elf32-core-headers"
|
|
KEXEC_ARGS=""
|
|
|
|
#Where to find the boot image
|
|
#KDUMP_BOOTDIR="/boot"
|
|
|
|
#What is the image type used for kdump
|
|
KDUMP_IMG="vmlinuz"
|
|
|
|
# Logging is controlled by following variables in the first kernel:
|
|
# - @var KDUMP_STDLOGLVL - logging level to standard error (console output)
|
|
# - @var KDUMP_SYSLOGLVL - logging level to syslog (by logger command)
|
|
# - @var KDUMP_KMSGLOGLVL - logging level to /dev/kmsg (only for boot-time)
|
|
#
|
|
# In the second kernel, kdump will use the rd.kdumploglvl option to set the
|
|
# log level in the above KDUMP_COMMANDLINE_APPEND.
|
|
# - @var rd.kdumploglvl - logging level to syslog (by logger command)
|
|
# - for example: add the rd.kdumploglvl=3 option to KDUMP_COMMANDLINE_APPEND
|
|
#
|
|
# Logging levels: no logging(0), error(1),warn(2),info(3),debug(4)
|
|
#
|
|
# KDUMP_STDLOGLVL=3
|
|
# KDUMP_SYSLOGLVL=0
|
|
# KDUMP_KMSGLOGLVL=0
|