aboutsummaryrefslogtreecommitdiffstats
path: root/tools/testing/selftests/ftrace/ftracetest
diff options
context:
space:
mode:
authorMasami Hiramatsu <mhiramat@kernel.org>2020-06-03 11:40:28 +0900
committerShuah Khan <skhan@linuxfoundation.org>2020-06-16 09:19:08 -0600
commitfa33e6236f5fa425a3ccf8925010d51fae9f0929 (patch)
tree4376287e8f8f32f18b071db2e7463aef2929ab85 /tools/testing/selftests/ftrace/ftracetest
parentselftests/ftrace: Return unsupported for the unconfigured features (diff)
downloadlinux-dev-fa33e6236f5fa425a3ccf8925010d51fae9f0929.tar.xz
linux-dev-fa33e6236f5fa425a3ccf8925010d51fae9f0929.zip
selftests/ftrace: Add "requires:" list support
Introduce "requires:" list to check required ftrace interface for each test. This will simplify the interface checking code and unify the error message. Another good point is, it can skip the ftrace initializing. Note that this requires list must be written as a shell comment. Signed-off-by: Masami Hiramatsu <mhiramat@kernel.org> Reviewed-by: Tom Zanussi <zanussi@kernel.org> Signed-off-by: Shuah Khan <skhan@linuxfoundation.org>
Diffstat (limited to '')
-rwxr-xr-xtools/testing/selftests/ftrace/ftracetest8
1 files changed, 7 insertions, 1 deletions
diff --git a/tools/testing/selftests/ftrace/ftracetest b/tools/testing/selftests/ftrace/ftracetest
index d3f6652311ef..cdf7940b6610 100755
--- a/tools/testing/selftests/ftrace/ftracetest
+++ b/tools/testing/selftests/ftrace/ftracetest
@@ -267,6 +267,11 @@ testcase() { # testfile
prlog -n "[$CASENO]$INSTANCE$desc"
}
+checkreq() { # testfile
+ requires=`grep "^#[ \t]*requires:" $1 | cut -f2- -d:`
+ check_requires $requires
+}
+
test_on_instance() { # testfile
grep -q "^#[ \t]*flags:.*instance" $1
}
@@ -356,7 +361,8 @@ trap 'SIG_RESULT=$XFAIL' $SIG_XFAIL
__run_test() { # testfile
# setup PID and PPID, $$ is not updated.
- (cd $TRACING_DIR; read PID _ < /proc/self/stat; set -e; set -x; initialize_ftrace; . $1)
+ (cd $TRACING_DIR; read PID _ < /proc/self/stat; set -e; set -x;
+ checkreq $1; initialize_ftrace; . $1)
[ $? -ne 0 ] && kill -s $SIG_FAIL $SIG_PID
}