Files
kdumpst/00-default.conf

75 lines
3.6 KiB
Bash

#!/bin/sh
#
# SPDX-License-Identifier: LGPL-2.1-or-later
#
# Copyright (c) 2021 Valve
# Maintainer: Guilherme G. Piccoli <gpiccoli@igalia.com>
#
# Configuration settings for kdump/pstore. After _any_ change in this
# file, it's required to re-create the kdump minimal initramfs by running:
# /usr/lib/kdumpst/kdumpst-load.sh create-initrd
#
#
# Pstore-RAM settings
# If USE_PSTORE_RAM is set to 1, Kdump won't be loaded. Instead, the Pstore
# RAM backend will be configured. In order to have success, this operation
# relies in having an available RAM buffer on /proc/iomem with at least
# PSTORE_MEM_AMOUNT (decimal, bytes) in size. Also, kernel must be able to
# allocate a contiguous memory amount of PSTORE_RECORD_SZ (decimal, bytes).
# If there is no such RAM buffer, there is a possibility to make use of
# the crash kernel area for that. There are risks: such memory area could
# have its address mapped differently across kernel updates; also if both
# pstore and the kdump kernel are loaded, that memory region will be for
# sure corrupted by the kexec panic load - so, kind of a last resource.
USE_PSTORE_RAM=1
PSTORE_MEM_AMOUNT=4194304
PSTORE_RECORD_SZ=1048576
PSTORE_RAM_USE_CRASH_MEM=0
#
#
# Mount-related options
# since the link is not present so early in the system boot. MOUNT_FOLDER
# MOUNT_FOLDER is the the place in which both pstore and kdump logs will
# be stored, as well as the kdump initrd and some ancillary data. This
# directory should be in an accessible filesystem (read/write) and if such
# folder doesn't exist, it'll be created.
MOUNT_FOLDER="/var/crash/kdumpst"
#
#
# Kdump controlling settings
# Currently we only do local storage log collection (no network/iscsi dumps).
# If FULL_COREDUMP is !=0, we collect a full compressed vmcore, which might
# require a lot of disk space. The MAKEDUMPFILE_*_CMD settings refer to
# tunings on makedumpfile - we rely on zstd compression and maximum page
# exclusion for the full vmcore, mimic'ing Debian/Ubuntu kdump. We also
# base on Debian/Ubuntu for the KDUMP_CMDLINE_APPEND option - this contains
# the kernel parameters we append in the /proc/cmdline for the kdump kernel;
# the most important parameters are nr_cpus=1 (to save RAM memory usage and
# avoid some potential issues with SMP) and reset_devices (some drivers
# rely on that for proper kdump).
FULL_COREDUMP=1
MAKEDUMPFILE_COREDUMP_CMD="-z -d 31"
MAKEDUMPFILE_DMESG_CMD="--dump-dmesg"
KDUMP_APPEND_CMDLINE="panic=-1 oops=panic fsck.mode=force fsck.repair=yes nr_cpus=1 reset_devices initcall_blacklist=drm_core_init module_blacklist=amdgpu,i915,nouveau"
#
#
# GRUB-related settings
# GRUB_AUTOSET determines if the kdumpst loader tool should try to
# automatically set grub.cfg in order to reserve memory for kdump (if
# needed, i.e., when pstore is not in use) - keep it as '1' for enabling
# the mechanism (this is the default). GRUB_BOOT_FILE is the full path of
# grub.cfg file - this is used in the config update step plus for syncing
# purposes. GRUB_CFG_FILE is the config file we edit in order to add/remove
# the crashkernel parameter. Finally, GRUB_CMDLINE holds the change to be
# made in the grub config file, specially the crashkernel memory reservation
# (notice that a trailing space is required in this line, so we avoid
# messing with other kernel parameters).
GRUB_AUTOSET=1
GRUB_BOOT_FILE="/boot/grub/grub.cfg"
GRUB_CFG_FILE="/etc/default/grub"
GRUB_CMDLINE="crashkernel=256M "
# If the BOOT_IMAGE kernel command line parameter begins with this, it will be
# removed. For example, if you use btrfs and have a root sub-volume called "@",
# set this to "/@"
GRUB_BOOT_IMAGE_PREFIX=""