1 #!/bin/sh 2 # SPDX-License-Identifier: GPL-2.0 3 # description: Register/unregister many kprobe events 4 5 [ -f kprobe_events ] || exit_unsupported # this is configurable 6 7 # ftrace fentry skip size depends on the machine architecture. 8 # Currently HAVE_KPROBES_ON_FTRACE defined on x86 and powerpc64le 9 case `uname -m` in 10 x86_64|i[3456]86) OFFS=5;; 11 ppc64le) OFFS=8;; 12 *) OFFS=0;; 13 esac 14 15 echo "Setup up to 256 kprobes" 16 grep t /proc/kallsyms | cut -f3 -d" " | grep -v .*\\..* | \ 17 head -n 256 | while read i; do echo p ${i}+${OFFS} ; done > kprobe_events ||: 18 19 echo 1 > events/kprobes/enable 20 echo 0 > events/kprobes/enable 21 echo > kprobe_events 22 echo "Waiting for unoptimizing & freeing" 23 sleep 5 24 echo "Done" 25