From 247c7a5f39b305f9a83bad2d936d00237165b7e0 Mon Sep 17 00:00:00 2001 From: "Mamoru Nishibe (Fujitsu)" Date: Wed, 24 Apr 2024 08:11:12 +0000 Subject: [PATCH 2/7] mkdumprd: Fix makedumpfile parameter check. If only "makedumpfile" is written in "core_collector" of /etc/kdump.conf and try to run makedumpfile without options, "makedumpfile --check-params" fails and terminates abnormally. # grep ^core_collector /etc/kdump.conf core_collector makedumpfile # /usr/bin/kdumpctl start : Commandline parameter is invalid. Try `makedumpfile --help' for more information. kdump: makedumpfile parameter check failed. kdump: mkdumprd: failed to make kdump initrd kdump: Starting kdump: [FAILED] On the other hand, "makedumpfile --check-params" works fine without any options. # makedumpfile --check-params vmcore dumpfile # echo $? 0 In addition, before verify_core_collector() was implemented, initial RAM for kdump was successfully created using only "core_collector makedumpfile". I consider it a regression. This is due to a parameter extraction error in verify_core_collector(). Fix it to correctly extract only the options as follows. Fixes: a1c28126 ("mkdumprd: Use makedumpfile --check-params option") Signed-off-by: Mamoru Nishibe Reviewed-by: Coiby Xu --- mkdumprd | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mkdumprd b/mkdumprd index 31c4b76..27eed5e 100644 --- a/mkdumprd +++ b/mkdumprd @@ -256,7 +256,7 @@ check_user_configured_target() verify_core_collector() { local _cmd="${1%% *}" - local _params="${1#* }" + local _params="${1#${_cmd}}" if [[ $_cmd != "makedumpfile" ]]; then if is_raw_dump_target; then -- 2.44.0