public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH] selftests/ftrace: skip ftrace test if FTRACE was not enabled
@ 2019-07-02  6:23 Po-Hsu Lin
  2019-07-02 19:22 ` shuah
  0 siblings, 1 reply; 8+ messages in thread
From: Po-Hsu Lin @ 2019-07-02  6:23 UTC (permalink / raw)
  To: rostedt, mingo, shuah, linux-kselftest; +Cc: linux-kernel

The ftrace test will need to have CONFIG_FTRACE enabled to make the
ftrace directory available.

Add an additional check to skip this test if the CONFIG_FTRACE was not
enabled.

This will be helpful to avoid a false-positive test result when testing
it directly with the following commad against a kernel that does not
have CONFIG_FTRACE enabled:
    make -C tools/testing/selftests TARGETS=ftrace run_tests

The test result on an Ubuntu KVM kernel will be changed from:
    selftests: ftrace: ftracetest
    ========================================
    Error: No ftrace directory found
    not ok 1..1 selftests: ftrace: ftracetest [FAIL]
To:
    selftests: ftrace: ftracetest
    ========================================
    CONFIG_FTRACE was not enabled, test skipped.
    not ok 1..1 selftests: ftrace: ftracetest [SKIP]

Signed-off-by: Po-Hsu Lin <po-hsu.lin@canonical.com>
---
 tools/testing/selftests/ftrace/ftracetest | 11 ++++++++++-
 1 file changed, 10 insertions(+), 1 deletion(-)

diff --git a/tools/testing/selftests/ftrace/ftracetest b/tools/testing/selftests/ftrace/ftracetest
index 6d5e9e8..6c8322e 100755
--- a/tools/testing/selftests/ftrace/ftracetest
+++ b/tools/testing/selftests/ftrace/ftracetest
@@ -7,6 +7,9 @@
 #  Written by Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com>
 #
 
+# Kselftest framework requirement - SKIP code is 4.
+ksft_skip=4
+
 usage() { # errno [message]
 [ ! -z "$2" ] && echo $2
 echo "Usage: ftracetest [options] [testcase(s)] [testcase-directory(s)]"
@@ -139,7 +142,13 @@ parse_opts $*
 
 # Verify parameters
 if [ -z "$TRACING_DIR" -o ! -d "$TRACING_DIR" ]; then
-  errexit "No ftrace directory found"
+  ftrace_enabled=`grep "^CONFIG_FTRACE=y" /lib/modules/$(uname -r)/build/.config`
+  if [ -z "$ftrace_enabled" ]; then
+    echo "CONFIG_FTRACE was not enabled, test skipped."
+    exit $ksft_skip
+  else
+    errexit "No ftrace directory found"
+  fi
 fi
 
 # Preparing logs
-- 
2.7.4


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

end of thread, other threads:[~2019-07-04 12:15 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-07-02  6:23 [PATCH] selftests/ftrace: skip ftrace test if FTRACE was not enabled Po-Hsu Lin
2019-07-02 19:22 ` shuah
2019-07-03  0:11   ` Masami Hiramatsu
2019-07-03  1:07     ` Steven Rostedt
2019-07-03  3:09       ` Masami Hiramatsu
2019-07-03  3:18         ` Steven Rostedt
2019-07-03  8:20           ` Masami Hiramatsu
2019-07-04 12:14     ` Po-Hsu Lin

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