selftests: bpf: test_kmod.sh: check the module path before insmod

"Linux Kernel Mailing List" <[email protected]>
Newsgroups gmane.linux.kernel.commits.head
Message-ID <[email protected]>
Web:        https://git.kernel.org/torvalds/c/035d808f7cfd578dc210b584beb17e365f34d39a
Commit:     035d808f7cfd578dc210b584beb17e365f34d39a
Parent:     41b0530eca69740f0c69eb5a867c41b01ec2e551
Refname:    refs/heads/master
Author:     Naresh Kamboju <[email protected]>
AuthorDate: Wed Feb 7 23:45:34 2018 +0530
Committer:  Daniel Borkmann <[email protected]>
CommitDate: Thu Feb 8 00:24:55 2018 +0100

    selftests: bpf: test_kmod.sh: check the module path before insmod
    
    test_kmod.sh reported false failure when module not present.
    Check test_bpf.ko is present in the path before loading it.
    
    Two cases to be addressed here,
    In the development process of test_bpf.c unit testing will be done by
    developers by using "insmod $SRC_TREE/lib/test_bpf.ko"
    
    On the other hand testers run full tests by installing modules on device
    under test (DUT) and followed by modprobe to insert the modules accordingly.
    
    Signed-off-by: Naresh Kamboju <[email protected]>
    Signed-off-by: Daniel Borkmann <[email protected]>
---
 tools/testing/selftests/bpf/test_kmod.sh | 18 +++++++++++++++---
 1 file changed, 15 insertions(+), 3 deletions(-)

diff --git a/tools/testing/selftests/bpf/test_kmod.sh b/tools/testing/selftests/bpf/test_kmod.sh
index ed4774d8d6ed..35669ccd4d23 100755
--- a/tools/testing/selftests/bpf/test_kmod.sh
+++ b/tools/testing/selftests/bpf/test_kmod.sh
@@ -10,9 +10,21 @@ test_run()
 
 	echo "[ JIT enabled:$1 hardened:$2 ]"
 	dmesg -C
-	insmod $SRC_TREE/lib/test_bpf.ko 2> /dev/null
-	if [ $? -ne 0 ]; then
-		rc=1
+	if [ -f ${SRC_TREE}/lib/test_bpf.ko ]; then
+		insmod ${SRC_TREE}/lib/test_bpf.ko 2> /dev/null
+		if [ $? -ne 0 ]; then
+			rc=1
+		fi
+	else
+		# Use modprobe dry run to check for missing test_bpf module
+		if ! /sbin/modprobe -q -n test_bpf; then
+			echo "test_bpf: [SKIP]"
+		elif /sbin/modprobe -q test_bpf; then
+			echo "test_bpf: ok"
+		else
+			echo "test_bpf: [FAIL]"
+			rc=1
+		fi
 	fi
 	rmmod  test_bpf 2> /dev/null
 	dmesg | grep FAIL
--
To unsubscribe from this list: send the line "unsubscribe git-commits-head" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.