1#!/bin/sh 2# SPDX-License-Identifier: GPL-2.0 3# description: Generic dynamic event - add/remove/test uprobe events 4# requires: uprobe_events 5 6if ! which readelf > /dev/null 2>&1 ; then 7 echo "No readelf found. skipped." 8 exit_unresolved 9fi 10 11echo 0 > events/enable 12echo > dynamic_events 13 14REALBIN=`readlink -f /bin/sh` 15ENTRYPOINT=`readelf -h ${REALBIN} | grep Entry | sed -e 's/[^0]*//'` 16 17echo "p:myevent ${REALBIN}:${ENTRYPOINT}" >> uprobe_events 18 19grep -q myevent uprobe_events 20test -d events/uprobes/myevent 21 22echo 1 > events/uprobes/myevent/enable 23echo 'ls' | /bin/sh > /dev/null 24echo 0 > events/uprobes/myevent/enable 25grep -q myevent trace 26 27echo "-:myevent" >> uprobe_events 28! grep -q myevent uprobe_events 29 30echo > uprobe_events 31 32clear_trace 33