Commit c5e4114f authored by Tom Zanussi's avatar Tom Zanussi Committed by Steven Rostedt (VMware)

selftests/ftrace: Move kprobe/uprobe check_error() to test.d/functions

The k/uprobe_sytax_errors test case defines a check_error() function
used to run a command and check the position of the caret in the
output.

This would be useful for other ftrace facilities too, so move it to
test.d/functions for use by anyone.  In the process, rename it to
ftrace_errlog_check() and parametrize it for general use.

Link: http://lkml.kernel.org/r/9f88080a06f1755811f69081926afe7e5cb53178.1554072478.git.tom.zanussi@linux.intel.comAcked-by: default avatarMasami Hiramatsu <mhiramat@kernel.org>
Signed-off-by: default avatarTom Zanussi <tom.zanussi@linux.intel.com>
Signed-off-by: default avatarSteven Rostedt (VMware) <rostedt@goodmis.org>
parent 8ab4483e
...@@ -109,3 +109,15 @@ LOCALHOST=127.0.0.1 ...@@ -109,3 +109,15 @@ LOCALHOST=127.0.0.1
yield() { yield() {
ping $LOCALHOST -c 1 || sleep .001 || usleep 1 || sleep 1 ping $LOCALHOST -c 1 || sleep .001 || usleep 1 || sleep 1
} }
ftrace_errlog_check() { # err-prefix command-with-error-pos-by-^ command-file
pos=$(echo -n "${2%^*}" | wc -c) # error position
command=$(echo "$2" | tr -d ^)
echo "Test command: $command"
echo > error_log
(! echo "$command" > "$3" ) 2> /dev/null
grep "$1: error:" -A 3 error_log
N=$(tail -n 1 error_log | wc -c)
# " Command: " and "^\n" => 13
test $(expr 13 + $pos) -eq $N
}
...@@ -7,15 +7,7 @@ ...@@ -7,15 +7,7 @@
[ -f error_log ] || exit_unsupported [ -f error_log ] || exit_unsupported
check_error() { # command-with-error-pos-by-^ check_error() { # command-with-error-pos-by-^
pos=$(echo -n "${1%^*}" | wc -c) # error position ftrace_errlog_check 'trace_kprobe' "$1" 'kprobe_events'
command=$(echo "$1" | tr -d ^)
echo "Test command: $command"
echo > error_log
(! echo "$command" > kprobe_events ) 2> /dev/null
grep "trace_kprobe: error:" -A 3 error_log
N=$(tail -n 1 error_log | wc -c)
# " Command: " and "^\n" => 13
test $(expr 13 + $pos) -eq $N
} }
if grep -q 'r\[maxactive\]' README; then if grep -q 'r\[maxactive\]' README; then
......
...@@ -7,15 +7,7 @@ ...@@ -7,15 +7,7 @@
[ -f error_log ] || exit_unsupported [ -f error_log ] || exit_unsupported
check_error() { # command-with-error-pos-by-^ check_error() { # command-with-error-pos-by-^
pos=$(echo -n "${1%^*}" | wc -c) # error position ftrace_errlog_check 'trace_uprobe' "$1" 'uprobe_events'
command=$(echo "$1" | tr -d ^)
echo "Test command: $command"
echo > error_log
(! echo "$command" > uprobe_events ) 2> /dev/null
grep "trace_uprobe: error:" -A 3 error_log
N=$(tail -n 1 error_log | wc -c)
# " Command: " and "^\n" => 13
test $(expr 13 + $pos) -eq $N
} }
check_error 'p ^/non_exist_file:100' # FILE_NOT_FOUND check_error 'p ^/non_exist_file:100' # FILE_NOT_FOUND
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment