Merge remote-tracking branch 'arm64/for-next/fixes' into for-next/core
[sfrench/cifs-2.6.git] / tools / testing / selftests / ftrace / test.d / kprobe / kprobe_args_string.tc
1 #!/bin/sh
2 # SPDX-License-Identifier: GPL-2.0
3 # description: Kprobe event string type argument
4 # requires: kprobe_events
5
6 case `uname -m` in
7 x86_64)
8   ARG1=%di
9 ;;
10 i[3456]86)
11   ARG1=%ax
12 ;;
13 aarch64)
14   ARG1=%x0
15 ;;
16 arm*)
17   ARG1=%r0
18 ;;
19 ppc64*)
20   ARG1=%r3
21 ;;
22 ppc*)
23   ARG1=%r3
24 ;;
25 *)
26   echo "Please implement other architecture here"
27   exit_untested
28 esac
29
30 : "Test get argument (1)"
31 echo "p:testprobe tracefs_create_dir arg1=+0(${ARG1}):string" > kprobe_events
32 echo 1 > events/kprobes/testprobe/enable
33 echo "p:test $FUNCTION_FORK" >> kprobe_events
34 grep -qe "testprobe.* arg1=\"test\"" trace
35
36 echo 0 > events/kprobes/testprobe/enable
37 : "Test get argument (2)"
38 echo "p:testprobe tracefs_create_dir arg1=+0(${ARG1}):string arg2=+0(${ARG1}):string" > kprobe_events
39 echo 1 > events/kprobes/testprobe/enable
40 echo "p:test $FUNCTION_FORK" >> kprobe_events
41 grep -qe "testprobe.* arg1=\"test\" arg2=\"test\"" trace
42