Commit 9739cee6 authored by Masami Hiramatsu's avatar Masami Hiramatsu Committed by Shuah Khan
Browse files

selftest: ftrace: Fix to add 256 kprobe events correctly



Current multiple-kprobe testcase only tries to add
kprobe events on first 256 text symbols. However
kprobes fails to probe on some text symbols (like
blacklisted symbols). Thus in the worst case,
the test can not add any kprobe events.

To avoid that, continue to try adding kprobe events
until 256 events. Also it confirms the number of
registered kprobe events.

Signed-off-by: default avatarMasami Hiramatsu <mhiramat@kernel.org>
Acked-by: default avatarSteven Rostedt (VMware) <rostedt@goodmis.org>
Signed-off-by: default avatarShuah Khan <shuahkh@osg.samsung.com>
parent 5e466647
Loading
Loading
Loading
Loading
+17 −2
Original line number Diff line number Diff line
@@ -12,9 +12,24 @@ case `uname -m` in
  *) OFFS=0;;
esac

echo "Setup up kprobes on first 256 text symbols"
if [ -d events/kprobes ]; then
  echo 0 > events/kprobes/enable
  echo > kprobe_events
fi

N=0
echo "Setup up kprobes on first available 256 text symbols"
grep -i " t " /proc/kallsyms | cut -f3 -d" " | grep -v .*\\..* | \
head -n 256 | while read i; do echo p ${i}+${OFFS} ; done > kprobe_events ||:
while read i; do
  echo p ${i}+${OFFS} >> kprobe_events && N=$((N+1)) ||:
  test $N -eq 256 && break
done

L=`wc -l kprobe_events`
if [ $L -ne $N ]; then
  echo "The number of kprobes events ($L) is not $N"
  exit_fail
fi

echo 1 > events/kprobes/enable
echo 0 > events/kprobes/enable