OpenVZ / Virtuozzo kernel development (devel@openvz.org)
 help / color / mirror / Atom feed
* [Devel] [PATCH vz10 v2] selftests/gpio: skip when gpio-mockup module is unavailable
       [not found] <20260625175159.1541911-1-eva.kurchatova@virtuozzo.com>
@ 2026-08-18 18:07 ` Konstantin Khorenko
  2026-08-18 18:08   ` [Devel] [PATCH RHEL10 COMMIT] " Konstantin Khorenko
  0 siblings, 1 reply; 2+ messages in thread
From: Konstantin Khorenko @ 2026-08-18 18:07 UTC (permalink / raw)


From: Eva Kurchatova <eva.kurchatova@virtuozzo.com>

The gpio-mockup test begins with:

    remove_module || fail "can't remove existing $module module"

where remove_module is simply 'modprobe -r -q gpio-mockup'. On a kernel
built without CONFIG_GPIO_MOCKUP (which is the case for many distro
kernels, including RHEL10 and ours), the module file does not exist,
modprobe -r returns non-zero, and the test is reported as FAIL even
though there is nothing for it to test.

Note that 'modprobe -r -q' returns 0 for a module which exists but is
not loaded, so it is only the completely absent module which trips this
up. Detect that in prerequisite() and skip cleanly, the way
selftests/mm/test_hmm.sh, selftests/mm/test_vmalloc.sh and
selftests/fpu/run_test_fpu.sh already do.

After this:

    # GPIO gpio-mockup test SKIP
    ok 1 selftests: gpio: gpio-mockup.sh # SKIP

instead of:

    not ok 1 selftests: gpio: gpio-mockup.sh # exit=1

https://virtuozzo.atlassian.net/browse/VSTOR-134202
Feature: fix selftests
Signed-off-by: Eva Kurchatova <eva.kurchatova@virtuozzo.com>
Signed-off-by: Konstantin Khorenko <khorenko@virtuozzo.com>

---
v2 changes:
  * dropped hunk in cleanup: if we skip the test when the module is not
    available, that hunk is redundant
  * dropped "-n" argument in modprobe. Less questions. Other testcase do the
    same without "-n".

---
 tools/testing/selftests/gpio/gpio-mockup.sh | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/tools/testing/selftests/gpio/gpio-mockup.sh b/tools/testing/selftests/gpio/gpio-mockup.sh
index fc2dd4c24d069..e6c236018c42a 100755
--- a/tools/testing/selftests/gpio/gpio-mockup.sh
+++ b/tools/testing/selftests/gpio/gpio-mockup.sh
@@ -51,6 +51,8 @@ prerequisite()
 	DEBUGFS=$(grep -w debugfs /proc/mounts | cut -f2 -d' ')
 	[ -d "$DEBUGFS" ] || skip "debugfs is not mounted"
 
+	modinfo $module >/dev/null 2>&1 || skip "$module module is not available"
+
 	GPIO_DEBUGFS=$DEBUGFS/$module
 }
 
-- 
2.43.0


^ permalink raw reply	[flat|nested] 2+ messages in thread

* [Devel] [PATCH RHEL10 COMMIT] selftests/gpio: skip when gpio-mockup module is unavailable
  2026-08-18 18:07 ` [Devel] [PATCH vz10 v2] selftests/gpio: skip when gpio-mockup module is unavailable Konstantin Khorenko
@ 2026-08-18 18:08   ` Konstantin Khorenko
  0 siblings, 0 replies; 2+ messages in thread
From: Konstantin Khorenko @ 2026-08-18 18:08 UTC (permalink / raw)


The commit is pushed to "branch-rh10-6.12.0-211.39.1.16.x.vz10-ovz" and will appear at git at bitbucket.org:openvz/vzkernel.git
after rh10-6.12.0-211.39.1.16.6.vz10
------>
commit 47c064bd2e73732eb86ad6587b4592b54cc8c654
Author: Eva Kurchatova <eva.kurchatova@virtuozzo.com>
Date:   Tue Aug 18 20:00:54 2026 +0200

    selftests/gpio: skip when gpio-mockup module is unavailable
    
    The gpio-mockup test begins with:
    
        remove_module || fail "can't remove existing $module module"
    
    where remove_module is simply 'modprobe -r -q gpio-mockup'. On a kernel
    built without CONFIG_GPIO_MOCKUP (which is the case for many distro
    kernels, including RHEL10 and ours), the module file does not exist,
    modprobe -r returns non-zero, and the test is reported as FAIL even
    though there is nothing for it to test.
    
    Note that 'modprobe -r -q' returns 0 for a module which exists but is
    not loaded, so it is only the completely absent module which trips this
    up. Detect that in prerequisite() and skip cleanly, the way
    selftests/mm/test_hmm.sh, selftests/mm/test_vmalloc.sh and
    selftests/fpu/run_test_fpu.sh already do.
    
    After this:
    
        # GPIO gpio-mockup test SKIP
        ok 1 selftests: gpio: gpio-mockup.sh # SKIP
    
    instead of:
    
        not ok 1 selftests: gpio: gpio-mockup.sh # exit=1
    
    https://virtuozzo.atlassian.net/browse/VSTOR-134202
    Feature: fix selftests
    Signed-off-by: Eva Kurchatova <eva.kurchatova@virtuozzo.com>
    Signed-off-by: Konstantin Khorenko <khorenko@virtuozzo.com>
---
 tools/testing/selftests/gpio/gpio-mockup.sh | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/tools/testing/selftests/gpio/gpio-mockup.sh b/tools/testing/selftests/gpio/gpio-mockup.sh
index fc2dd4c24d069..e6c236018c42a 100755
--- a/tools/testing/selftests/gpio/gpio-mockup.sh
+++ b/tools/testing/selftests/gpio/gpio-mockup.sh
@@ -51,6 +51,8 @@ prerequisite()
 	DEBUGFS=$(grep -w debugfs /proc/mounts | cut -f2 -d' ')
 	[ -d "$DEBUGFS" ] || skip "debugfs is not mounted"
 
+	modinfo $module >/dev/null 2>&1 || skip "$module module is not available"
+
 	GPIO_DEBUGFS=$DEBUGFS/$module
 }
 

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2026-08-18 18:08 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <20260625175159.1541911-1-eva.kurchatova@virtuozzo.com>
2026-08-18 18:07 ` [Devel] [PATCH vz10 v2] selftests/gpio: skip when gpio-mockup module is unavailable Konstantin Khorenko
2026-08-18 18:08   ` [Devel] [PATCH RHEL10 COMMIT] " Konstantin Khorenko

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox