selftests/ftrace: Add %return suffix tests
Add kprobe %return suffix testcase and syntax error tests for %return suffix. Link: https://lkml.kernel.org/r/159972817653.428528.9180599115849301184.stgit@devnote2 Acked-by: Shuah Khan <skhan@linuxfoundation.org> Signed-off-by: Masami Hiramatsu <mhiramat@kernel.org> Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
This commit is contained in:
parent
19c311ae7c
commit
8f2a59968f
|
@ -97,4 +97,10 @@ check_error 'p:kprobes/testevent _do_fork ^abcd=\"foo"' # DIFF_ARG_TYPE
|
|||
check_error '^p:kprobes/testevent _do_fork abcd=\1' # SAME_PROBE
|
||||
fi
|
||||
|
||||
# %return suffix errors
|
||||
if grep -q "place (kretprobe): .*%return.*" README; then
|
||||
check_error 'p vfs_read^%hoge' # BAD_ADDR_SUFFIX
|
||||
check_error 'p ^vfs_read+10%return' # BAD_RETPROBE
|
||||
fi
|
||||
|
||||
exit 0
|
||||
|
|
|
@ -0,0 +1,21 @@
|
|||
#!/bin/sh
|
||||
# SPDX-License-Identifier: GPL-2.0
|
||||
# description: Kretprobe %%return suffix test
|
||||
# requires: kprobe_events '<symbol>[+<offset>]%return':README
|
||||
|
||||
# Test for kretprobe by "r"
|
||||
echo 'r:myprobeaccept vfs_read' > kprobe_events
|
||||
RESULT1=`cat kprobe_events`
|
||||
|
||||
# Test for kretprobe by "%return"
|
||||
echo 'p:myprobeaccept vfs_read%return' > kprobe_events
|
||||
RESULT2=`cat kprobe_events`
|
||||
|
||||
if [ "$RESULT1" != "$RESULT2" ]; then
|
||||
echo "Error: %return suffix didn't make a return probe."
|
||||
echo "r-command: $RESULT1"
|
||||
echo "%return: $RESULT2"
|
||||
exit_fail
|
||||
fi
|
||||
|
||||
echo > kprobe_events
|
|
@ -17,4 +17,10 @@ check_error 'p /bin/sh:10(10)^a' # BAD_REFCNT_SUFFIX
|
|||
check_error 'p /bin/sh:10 ^@+ab' # BAD_FILE_OFFS
|
||||
check_error 'p /bin/sh:10 ^@symbol' # SYM_ON_UPROBE
|
||||
|
||||
# %return suffix error
|
||||
if grep -q "place (uprobe): .*%return.*" README; then
|
||||
check_error 'p /bin/sh:10^%hoge' # BAD_ADDR_SUFFIX
|
||||
check_error 'p /bin/sh:10(10)^%return' # BAD_REFCNT_SUFFIX
|
||||
fi
|
||||
|
||||
exit 0
|
||||
|
|
Loading…
Reference in New Issue