0001
0002
0003
0004
0005
0006 case `uname -m` in
0007 x86_64)
0008 ARG1=%di
0009 ;;
0010 i[3456]86)
0011 ARG1=%ax
0012 ;;
0013 aarch64)
0014 ARG1=%x0
0015 ;;
0016 arm*)
0017 ARG1=%r0
0018 ;;
0019 ppc64*)
0020 ARG1=%r3
0021 ;;
0022 ppc*)
0023 ARG1=%r3
0024 ;;
0025 s390*)
0026 ARG1=%r2
0027 ;;
0028 mips*)
0029 ARG1=%r4
0030 ;;
0031 *)
0032 echo "Please implement other architecture here"
0033 exit_untested
0034 esac
0035
0036 : "Test get argument (1)"
0037 echo "p:testprobe tracefs_create_dir arg1=+0(${ARG1}):string" > kprobe_events
0038 echo 1 > events/kprobes/testprobe/enable
0039 echo "p:test $FUNCTION_FORK" >> kprobe_events
0040 grep -qe "testprobe.* arg1=\"test\"" trace
0041
0042 echo 0 > events/kprobes/testprobe/enable
0043 : "Test get argument (2)"
0044 echo "p:testprobe tracefs_create_dir arg1=+0(${ARG1}):string arg2=+0(${ARG1}):string" > kprobe_events
0045 echo 1 > events/kprobes/testprobe/enable
0046 echo "p:test $FUNCTION_FORK" >> kprobe_events
0047 grep -qe "testprobe.* arg1=\"test\" arg2=\"test\"" trace
0048