kdump-load/save-logs: Log submission decoupling / major refactor
This is a pretty big refactor in the logic / goals of this kdump implementation. * WHY? We want to decouple completely the log submission mechanism from the kdump tooling, for mainly two reasons: reuse this submission API/mechanism in other log collection tools, and to allow upstreaming the kdump tooling for Arch Linux generically, not embedding SteamOS particulars to it. * HOW: First of all, we dropped the log submission bits from this codebase. We also deleted the particulars of SteamOS/Deck in the log naming, like collecting the serial of the device if "Jupiter" model is found in the DMI info or getting the Steam user account via the VDF file. All of that will happen in a later stage of the log processing, done by *another tool* that shall rename the logs and transmit them to the Valve servers. While at it, we've done other small changes in the logic to make this kdump tool more generic and reliable, like allowing the collection of kdump *AND* pstore logs (not choosing one of them). * CAVEATS / TODO: More to come in this front, we still definitely need to remove more references to SteamOS and clear a bit the code from its particulars. Important also is to update the README to reflect the changes made by the upstreaming effort. Mea culpa: these changes are invasive, switch some logic and expectations around the package, so making them fully bisectable would be way harder than not. Hence, please take that into account: this series should be tested/merged as a whole, it's not guaranteed that individual patches work correctly in a standalone fashion. Signed-off-by: Guilherme G. Piccoli <gpiccoli@igalia.com>
This commit is contained in:
@ -50,7 +50,6 @@ grub_update() {
|
||||
# This function is responsible for creating the kdump initrd, either
|
||||
# via command-line call or in case initrd doesn't exist during kdump load.
|
||||
create_initrd() {
|
||||
mkdir -p "${KDUMP_FOLDER}"
|
||||
rm -f "${KDUMP_FOLDER}/kdump-initrd-$(uname -r).img"
|
||||
|
||||
echo "Creating the kdump initramfs for kernel \"$(uname -r)\" ..."
|
||||
@ -87,7 +86,7 @@ fi
|
||||
|
||||
. /usr/share/kdump/kdump.conf
|
||||
|
||||
# Find the proper mount point for /home:
|
||||
# Find the proper mount point expected for kdump collection:
|
||||
DEVN_MOUNTED="$(findmnt "${MOUNT_DEVNODE}" -fno TARGET)"
|
||||
|
||||
# Create the kdump folder here, as soon as possible, given the
|
||||
@ -98,6 +97,8 @@ mkdir -p "${KDUMP_FOLDER}"
|
||||
echo "${KDUMP_FOLDER}" > "${KDUMP_MNT}"
|
||||
sync "${KDUMP_MNT}"
|
||||
|
||||
# Notice that at this point it's required to have the full
|
||||
# KDUMP_FOLDER, so this must remain after the DEVNODE operations above.
|
||||
if [ "$1" = "initrd" ]; then
|
||||
create_initrd
|
||||
exit 0
|
||||
|
||||
Reference in New Issue
Block a user