From: Eva Kurchatova <eva.kurchatova@virtuozzo.com>
To: khorenko@virtuozzo.com
Cc: devel@openvz.org
Subject: [Devel] [PATCH vz10 v2 1/2] selftests: pstore: skip when no backend is registered
Date: Thu, 10 Sep 2026 06:17:52 +0300 [thread overview]
Message-ID: <20260910031755.397386-1-eva.kurchatova@virtuozzo.com> (raw)
An unregistered pstore backend reads back "(null)", and every latter
check fails. This also contradicts the pstore_crash_test documentation.
Fix by skipping an unregistered backend in common_tests
https://virtuozzo.atlassian.net/browse/VSTOR-142447
Feature: fix selftests
Signed-off-by: Eva Kurchatova <eva.kurchatova@virtuozzo.com>
---
tools/testing/selftests/pstore/common_tests | 15 +++++++++++++--
.../selftests/pstore/pstore_post_reboot_tests | 2 --
2 files changed, 13 insertions(+), 4 deletions(-)
diff --git a/tools/testing/selftests/pstore/common_tests b/tools/testing/selftests/pstore/common_tests
index 4509f0cc9c91..71cd4473f45a 100755
--- a/tools/testing/selftests/pstore/common_tests
+++ b/tools/testing/selftests/pstore/common_tests
@@ -55,6 +55,8 @@ operate_files() { # tested value, files, operation
# Parameters
TEST_STRING_PATTERN="Testing pstore: uuid="
+# Kselftest framework requirement - SKIP code is 4.
+ksft_skip=4
UUID=`cat /proc/sys/kernel/random/uuid`
TOP_DIR=`absdir $0`
LOG_DIR=$TOP_DIR/logs/`date +%Y%m%d-%H%M%S`_${UUID}/
@@ -74,8 +76,17 @@ prlog "=== Pstore unit tests (`basename $0`) ==="
prlog "UUID="$UUID
prlog -n "Checking pstore backend is registered ... "
-backend=`cat /sys/module/pstore/parameters/backend`
-show_result $?
+# A tristate pstore leaves no parameter file at all when it is not built
+# or not loaded, and an unregistered backend reads back as "(null)".
+backend=`cat /sys/module/pstore/parameters/backend 2>/dev/null`
+if [ -z "$backend" ] || [ "$backend" = "(null)" ]; then
+ prlog "SKIP"
+ prlog -e "\tbackend=${backend:-<none>}"
+ prlog -e "\tcmdline=`cat /proc/cmdline`"
+ prlog "pstore backend is not registered, skipping"
+ exit $ksft_skip
+fi
+show_result 0
prlog -e "\tbackend=${backend}"
prlog -e "\tcmdline=`cat /proc/cmdline`"
if [ $rc -ne 0 ]; then
diff --git a/tools/testing/selftests/pstore/pstore_post_reboot_tests b/tools/testing/selftests/pstore/pstore_post_reboot_tests
index d6da5e86efbf..a5464407f5b2 100755
--- a/tools/testing/selftests/pstore/pstore_post_reboot_tests
+++ b/tools/testing/selftests/pstore/pstore_post_reboot_tests
@@ -7,8 +7,6 @@
# Written by Hiraku Toyooka <hiraku.toyooka.gu@hitachi.com>
#
-# Kselftest framework requirement - SKIP code is 4.
-ksft_skip=4
. ./common_tests
--
2.55.0
_______________________________________________
Devel mailing list
Devel@openvz.org
https://lists.openvz.org/mailman/listinfo/devel
next reply other threads:[~2026-09-10 3:19 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-09-10 3:17 Eva Kurchatova [this message]
2026-09-10 3:17 ` [Devel] [PATCH vz10 v2 2/2] selftests: pstore: skip the frontends the kernel does not have Eva Kurchatova
2026-09-23 18:37 ` Konstantin Khorenko
2026-09-23 18:03 ` [Devel] [PATCH vz10 v2 1/2] selftests: pstore: skip when no backend is registered Konstantin Khorenko
2026-09-23 18:37 ` Konstantin Khorenko
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260910031755.397386-1-eva.kurchatova@virtuozzo.com \
--to=eva.kurchatova@virtuozzo.com \
--cc=devel@openvz.org \
--cc=khorenko@virtuozzo.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox