50 lines
1.3 KiB
Bash
50 lines
1.3 KiB
Bash
#!/bin/sh
|
|
# SPDX-License-Identifier: GPL-2.0
|
|
# description: Generic dynamic event - generic clear event
|
|
|
|
[ -f dynamic_events ] || exit_unsupported
|
|
|
|
grep -q "place: \[<module>:\]<symbol>" README || exit_unsupported
|
|
grep -q "place (kretprobe): \[<module>:\]<symbol>" README || exit_unsupported
|
|
|
|
grep -q "s:\[synthetic/\]" README || exit_unsupported
|
|
|
|
echo 0 > events/enable
|
|
echo > dynamic_events
|
|
|
|
PLACE=_do_fork
|
|
|
|
setup_events() {
|
|
echo "p:myevent1 $PLACE" >> dynamic_events
|
|
echo "s:latency1 u64 lat; pid_t pid;" >> dynamic_events
|
|
echo "r:myevent2 $PLACE" >> dynamic_events
|
|
echo "s:latency2 u64 lat; pid_t pid;" >> dynamic_events
|
|
|
|
grep -q myevent1 dynamic_events
|
|
grep -q myevent2 dynamic_events
|
|
grep -q latency1 dynamic_events
|
|
grep -q latency2 dynamic_events
|
|
}
|
|
|
|
setup_events
|
|
|
|
echo "!p:myevent1 $PLACE" >> dynamic_events
|
|
! grep -q myevent1 dynamic_events
|
|
grep -q myevent2 dynamic_events
|
|
grep -q latency1 dynamic_events
|
|
grep -q latency2 dynamic_events
|
|
|
|
echo "!s:latency1 u64 lat; pid_t pid;" >> dynamic_events
|
|
grep -q myevent2 dynamic_events
|
|
! grep -q latency1 dynamic_events
|
|
grep -q latency2 dynamic_events
|
|
|
|
echo "!r:myevent2 $PLACE" >> dynamic_events
|
|
! grep -q myevent2 dynamic_events
|
|
grep -q latency2 dynamic_events
|
|
|
|
echo "!s:latency2 u64 lat; pid_t pid;" >> dynamic_events
|
|
! grep -q latency2 dynamic_events
|
|
|
|
echo > dynamic_events
|