brintos

brintos / linux-shallow public Read only

0
0
Text · 1.4 KiB · d319d5e Raw
62 lines · plain
1#!/bin/sh2# SPDX-License-Identifier: GPL-2.03# description: Generic dynamic event - add/remove tracepoint probe events on module4# requires: dynamic_events "t[:[<group>/][<event>]] <tracepoint> [<args>]":README5 6rmmod trace-events-sample ||:7if ! modprobe trace-events-sample ; then8  echo "No trace-events sample module - please make CONFIG_SAMPLE_TRACE_EVENTS=m"9  exit_unresolved;10fi11trap "rmmod trace-events-sample" EXIT12 13echo 0 > events/enable14echo > dynamic_events15 16TRACEPOINT1=foo_bar17TRACEPOINT2=foo_bar_with_cond18 19echo "t:myevent1 $TRACEPOINT1" >> dynamic_events20echo "t:myevent2 $TRACEPOINT2" >> dynamic_events21 22grep -q myevent1 dynamic_events23grep -q myevent2 dynamic_events24test -d events/tracepoints/myevent125test -d events/tracepoints/myevent226 27echo "-:myevent2" >> dynamic_events28 29grep -q myevent1 dynamic_events30! grep -q myevent2 dynamic_events31 32echo > dynamic_events33 34clear_trace35 36:;: "Try to put a probe on a tracepoint in non-loaded module" ;:37rmmod trace-events-sample38 39echo "t:myevent1 $TRACEPOINT1" >> dynamic_events40echo "t:myevent2 $TRACEPOINT2" >> dynamic_events41 42grep -q myevent1 dynamic_events43grep -q myevent2 dynamic_events44test -d events/tracepoints/myevent145test -d events/tracepoints/myevent246 47echo 1 > events/tracepoints/enable48 49modprobe trace-events-sample50 51sleep 252 53grep -q "myevent1" trace54grep -q "myevent2" trace55 56rmmod trace-events-sample57trap "" EXIT58 59echo 0 > events/tracepoints/enable60echo > dynamic_events61clear_trace62