#!/bin/sh # SPDX-License-Identifier: GPL-2.0 # description: Generic dynamic event - add/remove/test uprobe events # requires: uprobe_events if ! which readelf > /dev/null 2>&1 ; then echo "No readelf found. skipped." exit_unresolved fi echo 0 > events/enable echo > dynamic_events REALBIN=`readlink -f /bin/sh` ENTRYPOINT=`readelf -h ${REALBIN} | grep Entry | sed -e 's/[^0]*//'` echo "p:myevent ${REALBIN}:${ENTRYPOINT}" >> uprobe_events grep -q myevent uprobe_events test -d events/uprobes/myevent echo 1 > events/uprobes/myevent/enable echo 'ls' | /bin/sh > /dev/null echo 0 > events/uprobes/myevent/enable grep -q myevent trace echo "-:myevent" >> uprobe_events ! grep -q myevent uprobe_events echo > uprobe_events clear_trace