33 lines
744 B
Bash
33 lines
744 B
Bash
#!/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
|