1#!/bin/sh 2# SPDX-License-Identifier: GPL-2.0 3# description: event trigger - test inter-event histogram trigger trace action with dynamic string param 4# requires: set_event synthetic_events events/sched/sched_process_exec/hist "char name[]' >> synthetic_events":README ping:program 5 6fail() { #msg 7 echo $1 8 exit_fail 9} 10 11echo "Test create synthetic event" 12 13echo 'ping_test_latency u64 lat; char filename[]' > synthetic_events 14if [ ! -d events/synthetic/ping_test_latency ]; then 15 fail "Failed to create ping_test_latency synthetic event" 16fi 17 18echo "Test create histogram for synthetic event using trace action and dynamic strings" 19echo "Test histogram dynamic string variables,simple expression support and trace action" 20 21echo 'hist:key=pid:filenamevar=filename:ts0=common_timestamp.usecs' > events/sched/sched_process_exec/trigger 22echo 'hist:key=pid:lat=common_timestamp.usecs-$ts0:onmatch(sched.sched_process_exec).ping_test_latency($lat,$filenamevar) if comm == "ping"' > events/sched/sched_process_exit/trigger 23echo 'hist:keys=filename,lat:sort=filename,lat' > events/synthetic/ping_test_latency/trigger 24 25ping $LOCALHOST -c 5 26 27if ! grep -q "ping" events/synthetic/ping_test_latency/hist; then 28 fail "Failed to create dynamic string trace action inter-event histogram" 29fi 30 31exit 0 32