Hi Philipp,
Just gently asking, any news or comments about the templating scripts
for sysconfig and conf file?
Kairui Song <ryncsn(a)gmail.com> 于2022年5月10日周二 01:53写道:
>
> From: Kairui Song <kasong(a)tencent.com>
>
> These kdump.sysconfig.* files are almost identical with a bit different
> in several parameters, just use a simple script to generate them upon
> packaging. This should make it easier to maintain, updating a comment or
> param for certain arch can be done in one place.
>
> There are some minor differences with the generated version due to some
> arch's sysconfig is not up-to-dated, this actually fixed the issue,
> to check these differences:
>
> # for arch in aarch64 i386 ppc64 ppc64le s390x x86_64; do
> ./gen-kdump-sysconfig.sh $arch > kdump.sysconfig.$arch.new
> git checkout HEAD^ kdump.sysconfig.$arch &>/dev/null
> echo "Diff of arch $arch:"
> diff kdump.sysconfig.$arch kdump.sysconfig.$arch.new; echo ""
> done; git reset;
>
> Diff of arch aarch64:
> > #What is the images extension. Relocatable kernels don't have one
> > KDUMP_IMG_EXT=""
>
> Diff of arch i386:
>
> Diff of arch ppc64:
> 42,43d41
> < #Specify the action after failure
> <
>
> Diff of arch ppc64le:
> 42,43d41
> < #Specify the action after failure
> <
>
> Diff of arch s390x:
> 26,28d25
> < # Any additional /sbin/mkdumprd arguments required.
> < MKDUMPRD_ARGS=""
> <
>
> Diff of arch x86_64:
>
> Signed-off-by: Kairui Song <kasong(a)tencent.com>
> ---
> Update from V1:
> - Use a here doc to include the template inline the script.
> - Print a warning for unknown arch.
> Thanks to Philipp for these suggestion.
>
> kdump.sysconfig => gen-kdump-sysconfig.sh | 59 +++++++++++++++++++++++
> kdump.sysconfig.aarch64 | 53 --------------------
> kdump.sysconfig.i386 | 56 ---------------------
> kdump.sysconfig.ppc64 | 58 ----------------------
> kdump.sysconfig.ppc64le | 58 ----------------------
> kdump.sysconfig.s390x | 59 -----------------------
> kdump.sysconfig.x86_64 | 56 ---------------------
> kexec-tools.spec | 17 ++-----
> 8 files changed, 64 insertions(+), 352 deletions(-)
> rename kdump.sysconfig => gen-kdump-sysconfig.sh (50%)
> mode change 100644 => 100755
> delete mode 100644 kdump.sysconfig.aarch64
> delete mode 100644 kdump.sysconfig.i386
> delete mode 100644 kdump.sysconfig.ppc64
> delete mode 100644 kdump.sysconfig.ppc64le
> delete mode 100644 kdump.sysconfig.s390x
> delete mode 100644 kdump.sysconfig.x86_64
>
> diff --git a/kdump.sysconfig b/gen-kdump-sysconfig.sh
> old mode 100644
> new mode 100755
> similarity index 50%
> rename from kdump.sysconfig
> rename to gen-kdump-sysconfig.sh
> index 70ebf04..0fbf0ae
> --- a/kdump.sysconfig
> +++ b/gen-kdump-sysconfig.sh
> @@ -1,3 +1,10 @@
> +#!/bin/bash
> +# $1: target arch
> +
> +SED_EXP=""
> +
> +generate() {
> +sed "$SED_EXP" <<EOF
> # 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.
> @@ -36,6 +43,9 @@ KEXEC_ARGS=""
> #What is the image type used for kdump
> KDUMP_IMG="vmlinuz"
>
> +#What is the images extension. Relocatable kernels don't have one
> +KDUMP_IMG_EXT=""
> +
> # 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)
> @@ -51,3 +61,52 @@ KDUMP_IMG="vmlinuz"
> # KDUMP_STDLOGLVL=3
> # KDUMP_SYSLOGLVL=0
> # KDUMP_KMSGLOGLVL=0
> +EOF
> +}
> +
> +update_param()
> +{
> + SED_EXP="${SED_EXP}s/^$1=.*$/$1=\"$2\"/;"
> +}
> +
> +case "$1" in
> +aarch64)
> + update_param KEXEC_ARGS "-s"
> + update_param KDUMP_COMMANDLINE_APPEND \
> + "irqpoll nr_cpus=1 reset_devices cgroup_disable=memory
udev.children-max=2 panic=10 swiotlb=noforce novmcoredd cma=0 hugetlb_cma=0"
> + ;;
> +i386)
> + update_param KDUMP_COMMANDLINE_APPEND \
> + "irqpoll nr_cpus=1 reset_devices numa=off udev.children-max=2
panic=10 transparent_hugepage=never novmcoredd cma=0 hugetlb_cma=0"
> + ;;
> +ppc64)
> + update_param KEXEC_ARGS "--dt-no-old-root"
> + update_param KDUMP_COMMANDLINE_REMOVE \
> + "hugepages hugepagesz slub_debug quiet log_buf_len swiotlb
hugetlb_cma"
> + update_param KDUMP_COMMANDLINE_APPEND \
> + "irqpoll maxcpus=1 noirqdistrib reset_devices
cgroup_disable=memory numa=off udev.children-max=2 ehea.use_mcs=0 panic=10
kvm_cma_resv_ratio=0 transparent_hugepage=never novmcoredd hugetlb_cma=0"
> + ;;
> +ppc64le)
> + update_param KEXEC_ARGS "--dt-no-old-root -s"
> + update_param KDUMP_COMMANDLINE_REMOVE \
> + "hugepages hugepagesz slub_debug quiet log_buf_len swiotlb
hugetlb_cma"
> + update_param KDUMP_COMMANDLINE_APPEND \
> + "irqpoll maxcpus=1 noirqdistrib reset_devices
cgroup_disable=memory numa=off udev.children-max=2 ehea.use_mcs=0 panic=10
kvm_cma_resv_ratio=0 transparent_hugepage=never novmcoredd hugetlb_cma=0"
> + ;;
> +s390x)
> + update_param KEXEC_ARGS "-s"
> + update_param KDUMP_COMMANDLINE_REMOVE \
> + "hugepages hugepagesz slub_debug quiet log_buf_len swiotlb
vmcp_cma cma hugetlb_cma prot_virt"
> + update_param KDUMP_COMMANDLINE_APPEND \
> + "nr_cpus=1 cgroup_disable=memory numa=off udev.children-max=2
panic=10 transparent_hugepage=never novmcoredd vmcp_cma=0 cma=0 hugetlb_cma=0"
> + ;;
> +x86_64)
> + update_param KEXEC_ARGS "-s"
> + update_param KDUMP_COMMANDLINE_APPEND \
> + "irqpoll nr_cpus=1 reset_devices cgroup_disable=memory mce=off
numa=off udev.children-max=2 panic=10 acpi_no_memhotplug transparent_hugepage=never
nokaslr hest_disable novmcoredd cma=0 hugetlb_cma=0"
> + ;;
> +*)
> + echo "Warning: Unknown architecture '$1', using default
sysconfig template."
> +esac
> +
> +generate
> diff --git a/kdump.sysconfig.aarch64 b/kdump.sysconfig.aarch64
> deleted file mode 100644
> index 67a2af7..0000000
> --- a/kdump.sysconfig.aarch64
> +++ /dev/null
> @@ -1,53 +0,0 @@
> -# 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"
> -
> -# 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 cgroup_disable=memory
udev.children-max=2 panic=10 swiotlb=noforce novmcoredd cma=0 hugetlb_cma=0"
> -
> -# Any additional kexec arguments required. In most situations, this should
> -# be left empty
> -#
> -# Example:
> -# KEXEC_ARGS="--elf32-core-headers"
> -KEXEC_ARGS="-s"
> -
> -#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
> diff --git a/kdump.sysconfig.i386 b/kdump.sysconfig.i386
> deleted file mode 100644
> index 7e18c1c..0000000
> --- a/kdump.sysconfig.i386
> +++ /dev/null
> @@ -1,56 +0,0 @@
> -# 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"
> -
> -# 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 numa=off
udev.children-max=2 panic=10 transparent_hugepage=never novmcoredd cma=0
hugetlb_cma=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"
> -
> -#What is the images extension. Relocatable kernels don't have one
> -KDUMP_IMG_EXT=""
> -
> -# 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
> diff --git a/kdump.sysconfig.ppc64 b/kdump.sysconfig.ppc64
> deleted file mode 100644
> index ebb22f6..0000000
> --- a/kdump.sysconfig.ppc64
> +++ /dev/null
> @@ -1,58 +0,0 @@
> -# 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 hugetlb_cma"
> -
> -# This variable lets us append arguments to the current kdump commandline
> -# after processed by KDUMP_COMMANDLINE_REMOVE
> -KDUMP_COMMANDLINE_APPEND="irqpoll maxcpus=1 noirqdistrib reset_devices
cgroup_disable=memory numa=off udev.children-max=2 ehea.use_mcs=0 panic=10
kvm_cma_resv_ratio=0 transparent_hugepage=never novmcoredd hugetlb_cma=0"
> -
> -# Any additional kexec arguments required. In most situations, this should
> -# be left empty
> -#
> -# Example:
> -# KEXEC_ARGS="--elf32-core-headers"
> -KEXEC_ARGS="--dt-no-old-root"
> -
> -#Where to find the boot image
> -#KDUMP_BOOTDIR="/boot"
> -
> -#What is the image type used for kdump
> -KDUMP_IMG="vmlinuz"
> -
> -#What is the images extension. Relocatable kernels don't have one
> -KDUMP_IMG_EXT=""
> -
> -#Specify the action after failure
> -
> -# 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
> diff --git a/kdump.sysconfig.ppc64le b/kdump.sysconfig.ppc64le
> deleted file mode 100644
> index 270a2cf..0000000
> --- a/kdump.sysconfig.ppc64le
> +++ /dev/null
> @@ -1,58 +0,0 @@
> -# 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 hugetlb_cma"
> -
> -# This variable lets us append arguments to the current kdump commandline
> -# after processed by KDUMP_COMMANDLINE_REMOVE
> -KDUMP_COMMANDLINE_APPEND="irqpoll maxcpus=1 noirqdistrib reset_devices
cgroup_disable=memory numa=off udev.children-max=2 ehea.use_mcs=0 panic=10
kvm_cma_resv_ratio=0 transparent_hugepage=never novmcoredd hugetlb_cma=0"
> -
> -# Any additional kexec arguments required. In most situations, this should
> -# be left empty
> -#
> -# Example:
> -# KEXEC_ARGS="--elf32-core-headers"
> -KEXEC_ARGS="--dt-no-old-root -s"
> -
> -#Where to find the boot image
> -#KDUMP_BOOTDIR="/boot"
> -
> -#What is the image type used for kdump
> -KDUMP_IMG="vmlinuz"
> -
> -#What is the images extension. Relocatable kernels don't have one
> -KDUMP_IMG_EXT=""
> -
> -#Specify the action after failure
> -
> -# 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
> diff --git a/kdump.sysconfig.s390x b/kdump.sysconfig.s390x
> deleted file mode 100644
> index 234cfe9..0000000
> --- a/kdump.sysconfig.s390x
> +++ /dev/null
> @@ -1,59 +0,0 @@
> -# 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 vmcp_cma cma hugetlb_cma prot_virt"
> -
> -# This variable lets us append arguments to the current kdump commandline
> -# after processed by KDUMP_COMMANDLINE_REMOVE
> -KDUMP_COMMANDLINE_APPEND="nr_cpus=1 cgroup_disable=memory numa=off
udev.children-max=2 panic=10 transparent_hugepage=never novmcoredd vmcp_cma=0 cma=0
hugetlb_cma=0"
> -
> -# Any additional /sbin/mkdumprd arguments required.
> -MKDUMPRD_ARGS=""
> -
> -# Any additional kexec arguments required. In most situations, this should
> -# be left empty
> -#
> -# Example:
> -# KEXEC_ARGS="--elf32-core-headers"
> -KEXEC_ARGS="-s"
> -
> -#Where to find the boot image
> -#KDUMP_BOOTDIR="/boot"
> -
> -#What is the image type used for kdump
> -KDUMP_IMG="vmlinuz"
> -
> -#What is the images extension. Relocatable kernels don't have one
> -KDUMP_IMG_EXT=""
> -
> -# 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
> diff --git a/kdump.sysconfig.x86_64 b/kdump.sysconfig.x86_64
> deleted file mode 100644
> index 188ba3c..0000000
> --- a/kdump.sysconfig.x86_64
> +++ /dev/null
> @@ -1,56 +0,0 @@
> -# 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"
> -
> -# 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 cgroup_disable=memory
mce=off numa=off udev.children-max=2 panic=10 acpi_no_memhotplug
transparent_hugepage=never nokaslr hest_disable novmcoredd cma=0 hugetlb_cma=0"
> -
> -# Any additional kexec arguments required. In most situations, this should
> -# be left empty
> -#
> -# Example:
> -# KEXEC_ARGS="--elf32-core-headers"
> -KEXEC_ARGS="-s"
> -
> -#Where to find the boot image
> -#KDUMP_BOOTDIR="/boot"
> -
> -#What is the image type used for kdump
> -KDUMP_IMG="vmlinuz"
> -
> -#What is the images extension. Relocatable kernels don't have one
> -KDUMP_IMG_EXT=""
> -
> -# 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
> diff --git a/kexec-tools.spec b/kexec-tools.spec
> index db6374c..a63bcda 100644
> --- a/kexec-tools.spec
> +++ b/kexec-tools.spec
> @@ -11,10 +11,7 @@ Summary: The kexec/kdump userspace component
>
> Source0:
http://kernel.org/pub/linux/utils/kernel/kexec/%{name}-%{version}.tar.xz
> Source1: kdumpctl
> -Source2: kdump.sysconfig
> -Source3: kdump.sysconfig.x86_64
> -Source4: kdump.sysconfig.i386
> -Source5: kdump.sysconfig.ppc64
> +Source3: gen-kdump-sysconfig.sh
> Source7: mkdumprd
> Source8: kdump.conf
> Source9:
https://github.com/makedumpfile/makedumpfile/archive/%{mkdf_ver}/makedump...
> @@ -25,18 +22,15 @@ Source13: 98-kexec.rules
> Source14: 98-kexec.rules.ppc64
> Source15: kdump.conf.5
> Source16: kdump.service
> -Source18: kdump.sysconfig.s390x
> Source19:
https://github.com/lucchouina/eppic/archive/%{eppic_ver}/eppic-%{eppic_sh...
> Source20: kdump-lib.sh
> Source21: kdump-in-cluster-environment.txt
> Source22: kdump-dep-generator.sh
> Source23: kdump-lib-initramfs.sh
> -Source24: kdump.sysconfig.ppc64le
> Source25: kdumpctl.8
> Source26: live-image-kdump-howto.txt
> Source27: early-kdump-howto.txt
> Source28: kdump-udev-throttler
> -Source29: kdump.sysconfig.aarch64
> Source30: 60-kdump.install
> Source31: kdump-logger.sh
> Source32: mkfadumprd
> @@ -152,6 +146,9 @@ cp %{SOURCE26} .
> cp %{SOURCE27} .
> cp %{SOURCE34} .
>
> +# Generate sysconfig file
> +%{SOURCE3} %{_target_cpu} > kdump.sysconfig
> +
> make
> %ifarch %{ix86} x86_64 ppc64 s390x ppc64le aarch64
> make -C eppic-%{eppic_ver}/libeppic
> @@ -183,13 +180,9 @@ install -m 755 build/sbin/vmcore-dmesg
$RPM_BUILD_ROOT/usr/sbin/vmcore-dmesg
> install -m 644 build/man/man8/kexec.8 $RPM_BUILD_ROOT%{_mandir}/man8/
> install -m 644 build/man/man8/vmcore-dmesg.8 $RPM_BUILD_ROOT%{_mandir}/man8/
>
> -SYSCONFIG=$RPM_SOURCE_DIR/kdump.sysconfig.%{_target_cpu}
> -[ -f $SYSCONFIG ] || SYSCONFIG=$RPM_SOURCE_DIR/kdump.sysconfig.%{_arch}
> -[ -f $SYSCONFIG ] || SYSCONFIG=$RPM_SOURCE_DIR/kdump.sysconfig
> -install -m 644 $SYSCONFIG $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/kdump
> -
> install -m 755 %{SOURCE7} $RPM_BUILD_ROOT/usr/sbin/mkdumprd
> install -m 644 %{SOURCE8} $RPM_BUILD_ROOT%{_sysconfdir}/kdump.conf
> +install -m 644 kdump.sysconfig $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/kdump
> install -m 644 kexec/kexec.8 $RPM_BUILD_ROOT%{_mandir}/man8/kexec.8
> install -m 644 %{SOURCE12} $RPM_BUILD_ROOT%{_mandir}/man8/mkdumprd.8
> install -m 644 %{SOURCE25} $RPM_BUILD_ROOT%{_mandir}/man8/kdumpctl.8
> --
> 2.35.2
>