diff --git a/20-panic-sysctls.conf b/20-panic-sysctls.conf index 6c921e7..9426f30 100644 --- a/20-panic-sysctls.conf +++ b/20-panic-sysctls.conf @@ -4,9 +4,9 @@ # Maintainer: Guilherme G. Piccoli # # This file sets the sysctl parameters that are used by the -# kdump-steamos package, in order to panic and reboot on -# severe events, like oops or soft/hard lockups. -# Also, we set panic_print in order to collect more info. +# kdump package, in order to panic and reboot on severe events, +# like oops or soft/hard lockups. +# We also set panic_print in order to collect more info. kernel.panic_on_oops = 1 @@ -24,8 +24,8 @@ kernel.panic = -1 # bit 6 - print all CPUs backtrace (currently on linux-next) kernel.panic_print = 71 -# Currently disabled, since SteamOS might get stuck while -# doing installation on drive using calamares. +# Currently disabled, since we might get stuck in some +# I/O operation and it won't be great panicking... kernel.hung_task_panic = 0 # A bit risky to panic on that, might cause undesirable panics diff --git a/kdump-collect.sh b/kdump-collect.sh index d0517ce..08d2ce0 100644 --- a/kdump-collect.sh +++ b/kdump-collect.sh @@ -5,11 +5,12 @@ # Copyright (c) 2021 Valve. # Maintainer: Guilherme G. Piccoli # -# Kdump script that should effectively collect the core dump/dmesg from -# within a Dracut-generated initramfs on SteamOS kdump. -# The most fail-prone operations are guarded with conditionals to bail -# in case we indeed fail - worst thing here would be to have a bad condition -# and get stuck in this minimal initramfs with no output for the user. +# Script for effectively collecting the core dump/dmesg from +# within a minimal initrd - part of kdump/pstore tooling. +# The most fail-prone operations are guarded with conditionals to +# bail in case we indeed fail - worst thing here would be to have +# a bad condition and get stuck in this minimal initrd with no +# output for the user. # . /usr/lib/kdump/kdump.conf diff --git a/kdump-init.service b/kdump-init.service index cc1e68d..79a597d 100644 --- a/kdump-init.service +++ b/kdump-init.service @@ -5,7 +5,7 @@ # [Unit] -Description=SteamOS kdump loader boot-time service +Description=pstore/kdump loader boot-time service [Service] Type=oneshot diff --git a/kdump-load.sh b/kdump-load.sh index 46d4eef..0fbab0c 100644 --- a/kdump-load.sh +++ b/kdump-load.sh @@ -32,8 +32,8 @@ grub_update() { sync "/boot/grub/grub.cfg" 2>/dev/null sync "/efi/EFI/steamos/grub.cfg" 2>/dev/null - logger "kdump-steamos: kdump cannot work, no reserved memory in this boot..." - logger "kdump-steamos: but we automatically set crashkernel for next boot." + logger "kdump: kexec cannot work, no reserved memory in this boot..." + logger "kdump: but we automatically set crashkernel for next boot." exit 0 fi @@ -42,7 +42,7 @@ grub_update() { update-grub 1>/dev/null sync "/boot/grub/grub.cfg" 2>/dev/null sync "/efi/EFI/steamos/grub.cfg" 2>/dev/null - logger "kdump-steamos: clearing crashkernel memory previously set..." + logger "kdump: clearing crashkernel memory previously set..." fi fi } @@ -71,7 +71,7 @@ cleanup_unused_initrd() { KVER="${FNAME#kdump-initrd-}" if ! grep -q "${KVER}" "${INSTALLED_KERNELS}" ; then rm -f "${KDUMP_FOLDER}/${FNAME}.img" - logger "kdump-steamos: removed unused file \"${FNAME}.img\"" + logger "kdump: removed unused file \"${FNAME}.img\"" fi done @@ -80,7 +80,7 @@ cleanup_unused_initrd() { if [ ! -s "/usr/share/kdump/kdump.conf" ]; then - logger "kdump-steamos: /usr/share/kdump/kdump.conf is missing, aborting." + logger "kdump: /usr/share/kdump/kdump.conf is missing, aborting." exit 0 fi @@ -126,12 +126,12 @@ if [ "${USE_PSTORE_RAM}" -eq 1 ]; then if [ ${MEM_SIZE} -ge ${MEM_REQUIRED} ]; then if modprobe ramoops mem_address=0x"${MEM_START}" mem_size=${MEM_REQUIRED} record_size=${RECORD_SIZE}; then # If Pstore is set, update grub.cfg to avoid reserving crashkernel memory. - logger "kdump-steamos: pstore-RAM was loaded successfully" + logger "kdump: pstore-RAM was loaded successfully" cleanup_unused_initrd grub_update pstore exit 0 fi - logger "kdump-steamos: pstore-RAM load failed...will try kdump" + logger "kdump: pstore-RAM load failed...will try kdump" fi # Fallback to kdump load - if we fail when configuring pstore, better # trying kdump; in case we have crashkernel memory reserved, lucky us. @@ -157,7 +157,7 @@ if [ ! -s "${INITRD_FNAME}" ]; then fi if ! kexec -s -p "${VMLINUX#*BOOT_IMAGE=}" --initrd "${INITRD_FNAME}" --append="${KDUMP_CMDLINE}"; then - logger "kdump-steamos: kdump load failed" + logger "kdump: kexec load failed" exit 0 fi -logger "kdump-steamos: kdump was loaded successfully" +logger "kdump: panic kexec loaded successfully" diff --git a/kdump.conf b/kdump.conf index 0c988dd..b77d043 100644 --- a/kdump.conf +++ b/kdump.conf @@ -5,8 +5,8 @@ # Copyright (c) 2021 Valve # Maintainer: Guilherme G. Piccoli # -# Configuration settings for SteamOS kdump. After _any_ change in this -# file, it's required to create the kdump minimal initramfs by running: +# 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/kdump/kdump-load.sh initrd # @@ -25,7 +25,7 @@ KDUMP_MNT="/tmp/kdump.mnt" # vmcore, which might require a lot of disk space. The *_CMD settings refer # to tunings on makedumpfile - we rely on zstd compression and maximum page # exclusion for the full vmcore, mimic'ing Debian kdump. Finally, GRUB_AUTOSET -# determines if kdump-steamos should try to automatically set grub.cfg in +# determines if the kdump tooling 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). diff --git a/module-setup.sh b/module-setup.sh index 7392610..3fc2c3d 100644 --- a/module-setup.sh +++ b/module-setup.sh @@ -5,7 +5,7 @@ # Copyright (c) 2021 Valve. # Maintainer: Guilherme G. Piccoli # -# SteamOS kdump module construction/inclusion script for +# Kdump-initrd module construction/inclusion script for # Dracut-based initramfs. # @@ -21,13 +21,13 @@ installkernel() { install() { # Having a valid /usr/share/kdump/kdump.conf is essential for kdump. if [ ! -s "/usr/share/kdump/kdump.conf" ]; then - logger "kdump-steamos: failed to create initrd, kdump.conf is missing" + logger "kdump: failed to create initrd, kdump.conf is missing" exit 1 fi # Also true for makedumpfile... if [ ! -x "$(command -v makedumpfile)" ]; then - logger "kdump-steamos: failed to create initrd, makedumpfile is missing" + logger "kdump: failed to create initrd, makedumpfile is missing" exit 1 fi diff --git a/save-dumps.sh b/save-dumps.sh index d1cb0c8..2a55def 100644 --- a/save-dumps.sh +++ b/save-dumps.sh @@ -5,15 +5,14 @@ # Copyright (c) 2021 Valve. # Maintainer: Guilherme G. Piccoli # -# This is the SteamOS kdump/pstore log collector; this script prepares the -# pstore/kdump collected data and save it in the local disk, in the next -# successful boot. +# This is the kdump/pstore log collector; this script prepares the +# collected data and save it in the local disk, in the next successful boot. # # We do some validation to be sure KDUMP_MNT pointed path is valid... # That and having a valid /usr/share/kdump/kdump.conf are essential conditions. if [ ! -s "/usr/share/kdump/kdump.conf" ]; then - logger "kdump-steamos: /usr/share/kdump/kdump.conf is missing, aborting." + logger "kdump: /usr/share/kdump/kdump.conf is missing, aborting." exit 0 fi @@ -23,7 +22,7 @@ KDUMP_MAIN_FOLDER="$(cat "${KDUMP_MNT}")" rm -f "${KDUMP_MNT}" if [ ! -d "${KDUMP_MAIN_FOLDER}" ]; then - logger "kdump-steamos: invalid folder (${KDUMP_MAIN_FOLDER}) - aborting..." + logger "kdump: invalid folder (${KDUMP_MAIN_FOLDER}) - aborting..." exit 0 fi @@ -130,9 +129,10 @@ if [ ${LOGS_FOUND} -ne 0 ]; then sync "${LOG_FNAME}" 2>/dev/null if [ ! -s "${LOG_FNAME}" ]; then - logger "kdump-steamos: couldn't create the log archive, aborting..." + logger "kdump: couldn't create the compressed log archive" + logger "kdump: check folder \"${KDUMP_TMP_FOLDER}\" for logs" else - logger "kdump-steamos: logs saved locally (check ${KDUMP_LOGS_FOLDER})" + logger "kdump: logs saved in \"${KDUMP_LOGS_FOLDER}\"" fi fi