tools/testing/selftests/ftrace/test.d/dynevent/add_remove_tprobe.tc

Source file repositories/reference/linux-study-clean/tools/testing/selftests/ftrace/test.d/dynevent/add_remove_tprobe.tc

File Facts

System
Linux kernel
Corpus path
tools/testing/selftests/ftrace/test.d/dynevent/add_remove_tprobe.tc
Extension
.tc
Size
1141 bytes
Lines
42
Domain
Support Tooling And Documentation
Bucket
tools
Inferred role
Support Tooling And Documentation: tools
Status
atlas-only

Why This File Exists

Repository support layer: documentation, build tooling, samples, user-space helper tools, generated initramfs support, licenses, and validation utilities.

Dependency Surface

Detected Declarations

Annotated Snippet

#!/bin/sh
# SPDX-License-Identifier: GPL-2.0
# description: Generic dynamic event - add/remove tracepoint probe events
# requires: dynamic_events "t[:[<group>/][<event>]] <tracepoint> [<args>]":README

echo 0 > events/enable
echo > dynamic_events

SUBSYSTEM=kmem
TRACEPOINT1=kmem_cache_alloc
TRACEPOINT2=kmem_cache_free

echo "t:myevent1 $TRACEPOINT1" >> dynamic_events
echo "t:myevent2 $TRACEPOINT2" >> dynamic_events

grep -q myevent1 dynamic_events
grep -q myevent2 dynamic_events
test -d events/tracepoints/myevent1
test -d events/tracepoints/myevent2

echo "-:myevent2" >> dynamic_events

grep -q myevent1 dynamic_events
! grep -q myevent2 dynamic_events

echo > dynamic_events

# auto naming check
echo "t $TRACEPOINT1" >> dynamic_events

test -d events/tracepoints/$TRACEPOINT1

echo > dynamic_events

# SUBSYSTEM is not supported
echo "t $SUBSYSTEM/$TRACEPOINT1" >> dynamic_events && exit_fail ||:
echo "t $SUBSYSTEM:$TRACEPOINT1" >> dynamic_events && exit_fail ||:
echo "t:myevent3 $SUBSYSTEM/$TRACEPOINT1" >> dynamic_events && exit_fail ||:
echo "t:myevent3 $SUBSYSTEM:$TRACEPOINT1" >> dynamic_events && exit_fail ||:

clear_trace

Annotation

Implementation Notes