Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

Merge tag 'linux-kselftest-5.8-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest

Pull kselftest cleanups from Shuah Khan:

- ftrace "requires:" list for simplifying and unifying requirement
checks for each test case, adding "requires:" line instead of
checking required ftrace interfaces in each test case.

- a minor spelling correction patch

* tag 'linux-kselftest-5.8-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest:
selftests/ftrace: Support ":README" suffix for requires
selftests/ftrace: Support ":tracer" suffix for requires
selftests/ftrace: Convert check_filter_file() with requires list
selftests/ftrace: Convert required interface checks into requires list
selftests/ftrace: Add "requires:" list support
selftests/ftrace: Return unsupported for the unconfigured features
selftests/ftrace: Allow ":" in description
tools: testing: ftrace: trigger: fix spelling mistake

+123 -637
+9 -2
tools/testing/selftests/ftrace/ftracetest
··· 263 263 264 264 testcase() { # testfile 265 265 CASENO=$((CASENO+1)) 266 - desc=`grep "^#[ \t]*description:" $1 | cut -f2 -d:` 266 + desc=`grep "^#[ \t]*description:" $1 | cut -f2- -d:` 267 267 prlog -n "[$CASENO]$INSTANCE$desc" 268 + } 269 + 270 + checkreq() { # testfile 271 + requires=`grep "^#[ \t]*requires:" $1 | cut -f2- -d:` 272 + # Use eval to pass quoted-patterns correctly. 273 + eval check_requires "$requires" 268 274 } 269 275 270 276 test_on_instance() { # testfile ··· 362 356 363 357 __run_test() { # testfile 364 358 # setup PID and PPID, $$ is not updated. 365 - (cd $TRACING_DIR; read PID _ < /proc/self/stat; set -e; set -x; initialize_ftrace; . $1) 359 + (cd $TRACING_DIR; read PID _ < /proc/self/stat; set -e; set -x; 360 + checkreq $1; initialize_ftrace; . $1) 366 361 [ $? -ne 0 ] && kill -s $SIG_FAIL $SIG_PID 367 362 } 368 363
+1 -2
tools/testing/selftests/ftrace/test.d/00basic/snapshot.tc
··· 1 1 #!/bin/sh 2 2 # description: Snapshot and tracing setting 3 + # requires: snapshot 3 4 # flags: instance 4 - 5 - [ ! -f snapshot ] && exit_unsupported 6 5 7 6 echo "Set tracing off" 8 7 echo 0 > tracing_on
+1 -2
tools/testing/selftests/ftrace/test.d/00basic/trace_pipe.tc
··· 1 1 #!/bin/sh 2 2 # SPDX-License-Identifier: GPL-2.0 3 3 # description: trace_pipe and trace_marker 4 + # requires: trace_marker 4 5 # flags: instance 5 - 6 - [ ! -f trace_marker ] && exit_unsupported 7 6 8 7 echo "test input 1" > trace_marker 9 8
+1 -5
tools/testing/selftests/ftrace/test.d/direct/kprobe-direct.tc
··· 1 1 #!/bin/sh 2 2 # SPDX-License-Identifier: GPL-2.0 3 3 # description: Test ftrace direct functions against kprobes 4 + # requires: kprobe_events 4 5 5 6 rmmod ftrace-direct ||: 6 7 if ! modprobe ftrace-direct ; then 7 8 echo "No ftrace-direct sample module - please build with CONFIG_SAMPLE_FTRACE_DIRECT=m" 8 9 exit_unresolved; 9 - fi 10 - 11 - if [ ! -f kprobe_events ]; then 12 - echo "No kprobe_events file -please build CONFIG_KPROBE_EVENTS" 13 - exit_unresolved; 14 10 fi 15 11 16 12 echo "Let the module run a little"
+1 -5
tools/testing/selftests/ftrace/test.d/dynevent/add_remove_kprobe.tc
··· 1 1 #!/bin/sh 2 2 # SPDX-License-Identifier: GPL-2.0 3 3 # description: Generic dynamic event - add/remove kprobe events 4 - 5 - [ -f dynamic_events ] || exit_unsupported 6 - 7 - grep -q "place: \[<module>:\]<symbol>" README || exit_unsupported 8 - grep -q "place (kretprobe): \[<module>:\]<symbol>" README || exit_unsupported 4 + # requires: dynamic_events "place: [<module>:]<symbol>":README "place (kretprobe): [<module>:]<symbol>":README 9 5 10 6 echo 0 > events/enable 11 7 echo > dynamic_events
+1 -4
tools/testing/selftests/ftrace/test.d/dynevent/add_remove_synth.tc
··· 1 1 #!/bin/sh 2 2 # SPDX-License-Identifier: GPL-2.0 3 3 # description: Generic dynamic event - add/remove synthetic events 4 - 5 - [ -f dynamic_events ] || exit_unsupported 6 - 7 - grep -q "s:\[synthetic/\]" README || exit_unsupported 4 + # requires: dynamic_events "s:[synthetic/]":README 8 5 9 6 echo 0 > events/enable 10 7 echo > dynamic_events
+1 -10
tools/testing/selftests/ftrace/test.d/dynevent/clear_select_events.tc
··· 1 1 #!/bin/sh 2 2 # SPDX-License-Identifier: GPL-2.0 3 3 # description: Generic dynamic event - selective clear (compatibility) 4 - 5 - [ -f dynamic_events ] || exit_unsupported 6 - 7 - grep -q "place: \[<module>:\]<symbol>" README || exit_unsupported 8 - grep -q "place (kretprobe): \[<module>:\]<symbol>" README || exit_unsupported 9 - 10 - grep -q "s:\[synthetic/\]" README || exit_unsupported 11 - 12 - [ -f synthetic_events ] || exit_unsupported 13 - [ -f kprobe_events ] || exit_unsupported 4 + # requires: dynamic_events kprobe_events synthetic_events "place: [<module>:]<symbol>":README "place (kretprobe): [<module>:]<symbol>":README "s:[synthetic/]":README 14 5 15 6 echo 0 > events/enable 16 7 echo > dynamic_events
+1 -7
tools/testing/selftests/ftrace/test.d/dynevent/generic_clear_event.tc
··· 1 1 #!/bin/sh 2 2 # SPDX-License-Identifier: GPL-2.0 3 3 # description: Generic dynamic event - generic clear event 4 - 5 - [ -f dynamic_events ] || exit_unsupported 6 - 7 - grep -q "place: \[<module>:\]<symbol>" README || exit_unsupported 8 - grep -q "place (kretprobe): \[<module>:\]<symbol>" README || exit_unsupported 9 - 10 - grep -q "s:\[synthetic/\]" README || exit_unsupported 4 + # requires: dynamic_events "place: [<module>:]<symbol>":README "place (kretprobe): [<module>:]<symbol>":README "s:[synthetic/]":README 11 5 12 6 echo 0 > events/enable 13 7 echo > dynamic_events
+1 -5
tools/testing/selftests/ftrace/test.d/event/event-enable.tc
··· 1 1 #!/bin/sh 2 2 # SPDX-License-Identifier: GPL-2.0 3 3 # description: event tracing - enable/disable with event level files 4 + # requires: set_event events/sched 4 5 # flags: instance 5 6 6 7 do_reset() { ··· 13 12 echo $1 14 13 exit_fail 15 14 } 16 - 17 - if [ ! -f set_event -o ! -d events/sched ]; then 18 - echo "event tracing is not supported" 19 - exit_unsupported 20 - fi 21 15 22 16 echo 'sched:sched_switch' > set_event 23 17
+1 -10
tools/testing/selftests/ftrace/test.d/event/event-no-pid.tc
··· 1 1 #!/bin/sh 2 2 # SPDX-License-Identifier: GPL-2.0 3 3 # description: event tracing - restricts events based on pid notrace filtering 4 + # requires: set_event events/sched set_event_pid set_event_notrace_pid 4 5 # flags: instance 5 6 6 7 do_reset() { ··· 56 55 enable_system thermal 57 56 echo 1 > tracing_on 58 57 } 59 - 60 - if [ ! -f set_event -o ! -d events/sched ]; then 61 - echo "event tracing is not supported" 62 - exit_unsupported 63 - fi 64 - 65 - if [ ! -f set_event_pid -o ! -f set_event_notrace_pid ]; then 66 - echo "event pid notrace filtering is not supported" 67 - exit_unsupported 68 - fi 69 58 70 59 echo 0 > options/event-fork 71 60
+1 -10
tools/testing/selftests/ftrace/test.d/event/event-pid.tc
··· 1 1 #!/bin/sh 2 2 # SPDX-License-Identifier: GPL-2.0 3 3 # description: event tracing - restricts events based on pid 4 + # requires: set_event set_event_pid events/sched 4 5 # flags: instance 5 6 6 7 do_reset() { ··· 16 15 echo $1 17 16 exit_fail 18 17 } 19 - 20 - if [ ! -f set_event -o ! -d events/sched ]; then 21 - echo "event tracing is not supported" 22 - exit_unsupported 23 - fi 24 - 25 - if [ ! -f set_event_pid ]; then 26 - echo "event pid filtering is not supported" 27 - exit_unsupported 28 - fi 29 18 30 19 echo 0 > options/event-fork 31 20
+1 -5
tools/testing/selftests/ftrace/test.d/event/subsystem-enable.tc
··· 1 1 #!/bin/sh 2 2 # SPDX-License-Identifier: GPL-2.0 3 3 # description: event tracing - enable/disable with subsystem level files 4 + # requires: set_event events/sched/enable 4 5 # flags: instance 5 6 6 7 do_reset() { ··· 13 12 echo $1 14 13 exit_fail 15 14 } 16 - 17 - if [ ! -f set_event -o ! -d events/sched ]; then 18 - echo "event tracing is not supported" 19 - exit_unsupported 20 - fi 21 15 22 16 echo 'sched:*' > set_event 23 17
+1 -5
tools/testing/selftests/ftrace/test.d/event/toplevel-enable.tc
··· 1 1 #!/bin/sh 2 2 # SPDX-License-Identifier: GPL-2.0 3 3 # description: event tracing - enable/disable with top level files 4 + # requires: available_events set_event events/enable 4 5 5 6 do_reset() { 6 7 echo > set_event ··· 12 11 echo $1 13 12 exit_fail 14 13 } 15 - 16 - if [ ! -f available_events -o ! -f set_event -o ! -d events ]; then 17 - echo "event tracing is not supported" 18 - exit_unsupported 19 - fi 20 14 21 15 echo '*:*' > set_event 22 16
+1 -13
tools/testing/selftests/ftrace/test.d/ftrace/fgraph-filter-stack.tc
··· 1 1 #!/bin/sh 2 2 # SPDX-License-Identifier: GPL-2.0 3 3 # description: ftrace - function graph filters with stack tracer 4 + # requires: stack_trace set_ftrace_filter function_graph:tracer 4 5 5 6 # Make sure that function graph filtering works, and is not 6 7 # affected by other tracers enabled (like stack tracer) 7 - 8 - if ! grep -q function_graph available_tracers; then 9 - echo "no function graph tracer configured" 10 - exit_unsupported 11 - fi 12 - 13 - check_filter_file set_ftrace_filter 14 8 15 9 do_reset() { 16 10 if [ -e /proc/sys/kernel/stack_tracer_enabled ]; then ··· 30 36 fi 31 37 32 38 echo function_graph > current_tracer 33 - 34 - if [ ! -f stack_trace ]; then 35 - echo "Stack tracer not configured" 36 - do_reset 37 - exit_unsupported; 38 - fi 39 39 40 40 echo "Now testing with stack tracer" 41 41
+1 -7
tools/testing/selftests/ftrace/test.d/ftrace/fgraph-filter.tc
··· 1 1 #!/bin/sh 2 2 # SPDX-License-Identifier: GPL-2.0 3 3 # description: ftrace - function graph filters 4 + # requires: set_ftrace_filter function_graph:tracer 4 5 5 6 # Make sure that function graph filtering works 6 - 7 - if ! grep -q function_graph available_tracers; then 8 - echo "no function graph tracer configured" 9 - exit_unsupported 10 - fi 11 - 12 - check_filter_file set_ftrace_filter 13 7 14 8 fail() { # msg 15 9 echo $1
+1 -7
tools/testing/selftests/ftrace/test.d/ftrace/func-filter-glob.tc
··· 1 1 #!/bin/sh 2 2 # SPDX-License-Identifier: GPL-2.0 3 3 # description: ftrace - function glob filters 4 + # requires: set_ftrace_filter function:tracer 4 5 5 6 # Make sure that function glob matching filter works. 6 - 7 - if ! grep -q function available_tracers; then 8 - echo "no function tracer configured" 9 - exit_unsupported 10 - fi 11 - 12 - check_filter_file set_ftrace_filter 13 7 14 8 disable_tracing 15 9 clear_trace
+1 -12
tools/testing/selftests/ftrace/test.d/ftrace/func-filter-notrace-pid.tc
··· 1 1 #!/bin/sh 2 2 # SPDX-License-Identifier: GPL-2.0 3 3 # description: ftrace - function pid notrace filters 4 + # requires: set_ftrace_notrace_pid set_ftrace_filter function:tracer 4 5 # flags: instance 5 6 6 7 # Make sure that function pid matching filter with notrace works. 7 - 8 - if ! grep -q function available_tracers; then 9 - echo "no function tracer configured" 10 - exit_unsupported 11 - fi 12 - 13 - if [ ! -f set_ftrace_notrace_pid ]; then 14 - echo "set_ftrace_notrace_pid not found? Is function tracer not set?" 15 - exit_unsupported 16 - fi 17 - 18 - check_filter_file set_ftrace_filter 19 8 20 9 do_function_fork=1 21 10
+1 -12
tools/testing/selftests/ftrace/test.d/ftrace/func-filter-pid.tc
··· 1 1 #!/bin/sh 2 2 # SPDX-License-Identifier: GPL-2.0 3 3 # description: ftrace - function pid filters 4 + # requires: set_ftrace_pid set_ftrace_filter function:tracer 4 5 # flags: instance 5 6 6 7 # Make sure that function pid matching filter works. 7 8 # Also test it on an instance directory 8 - 9 - if ! grep -q function available_tracers; then 10 - echo "no function tracer configured" 11 - exit_unsupported 12 - fi 13 - 14 - if [ ! -f set_ftrace_pid ]; then 15 - echo "set_ftrace_pid not found? Is function tracer not set?" 16 - exit_unsupported 17 - fi 18 - 19 - check_filter_file set_ftrace_filter 20 9 21 10 do_function_fork=1 22 11
+1 -2
tools/testing/selftests/ftrace/test.d/ftrace/func-filter-stacktrace.tc
··· 1 1 #!/bin/sh 2 2 # SPDX-License-Identifier: GPL-2.0 3 3 # description: ftrace - stacktrace filter command 4 + # requires: set_ftrace_filter 4 5 # flags: instance 5 - 6 - check_filter_file set_ftrace_filter 7 6 8 7 echo _do_fork:stacktrace >> set_ftrace_filter 9 8
+1 -5
tools/testing/selftests/ftrace/test.d/ftrace/func_cpumask.tc
··· 1 1 #!/bin/sh 2 2 # SPDX-License-Identifier: GPL-2.0 3 3 # description: ftrace - function trace with cpumask 4 + # requires: function:tracer 4 5 5 6 if ! which nproc ; then 6 7 nproc() { ··· 14 13 if [ $NP -eq 1 ] ;then 15 14 echo "We can not test cpumask on UP environment" 16 15 exit_unresolved 17 - fi 18 - 19 - if ! grep -q "function" available_tracers ; then 20 - echo "Function trace is not enabled" 21 - exit_unsupported 22 16 fi 23 17 24 18 ORIG_CPUMASK=`cat tracing_cpumask`
+3 -4
tools/testing/selftests/ftrace/test.d/ftrace/func_event_triggers.tc
··· 3 3 # description: ftrace - test for function event triggers 4 4 # flags: instance 5 5 # 6 + # The triggers are set within the set_ftrace_filter file 7 + # requires: set_ftrace_filter 8 + # 6 9 # Ftrace allows to add triggers to functions, such as enabling or disabling 7 10 # tracing, enabling or disabling trace events, or recording a stack trace 8 11 # within the ring buffer. 9 12 # 10 13 # This test is designed to test event triggers 11 - # 12 - 13 - # The triggers are set within the set_ftrace_filter file 14 - check_filter_file set_ftrace_filter 15 14 16 15 do_reset() { 17 16 reset_ftrace_filter
+1 -2
tools/testing/selftests/ftrace/test.d/ftrace/func_mod_trace.tc
··· 1 1 #!/bin/sh 2 2 # SPDX-License-Identifier: GPL-2.0 3 3 # description: ftrace - function trace on module 4 - 5 - check_filter_file set_ftrace_filter 4 + # requires: set_ftrace_filter 6 5 7 6 : "mod: allows to filter a non exist function" 8 7 echo 'non_exist_func:mod:non_exist_module' > set_ftrace_filter
+1 -2
tools/testing/selftests/ftrace/test.d/ftrace/func_profile_stat.tc
··· 1 1 #!/bin/sh 2 2 # SPDX-License-Identifier: GPL-2.0 3 3 # description: ftrace - function profiling 4 - 5 - [ ! -f function_profile_enabled ] && exit_unsupported 4 + # requires: function_profile_enabled 6 5 7 6 : "Enable function profile" 8 7 echo 1 > function_profile_enabled
+1 -11
tools/testing/selftests/ftrace/test.d/ftrace/func_profiler.tc
··· 1 1 #!/bin/sh 2 2 # SPDX-License-Identifier: GPL-2.0 3 3 # description: ftrace - function profiler with function tracing 4 + # requires: function_profile_enabled set_ftrace_filter function_graph:tracer 4 5 5 6 # There was a bug after a rewrite of the ftrace infrastructure that 6 7 # caused the function_profiler not to be able to run with the function ··· 14 13 # This test triggers those bugs on those kernels. 15 14 # 16 15 # We need function_graph and profiling to to run this test 17 - if ! grep -q function_graph available_tracers; then 18 - echo "no function graph tracer configured" 19 - exit_unsupported; 20 - fi 21 - 22 - check_filter_file set_ftrace_filter 23 - 24 - if [ ! -f function_profile_enabled ]; then 25 - echo "function_profile_enabled not found, function profiling enabled?" 26 - exit_unsupported 27 - fi 28 16 29 17 fail() { # mesg 30 18 echo $1
+3 -3
tools/testing/selftests/ftrace/test.d/ftrace/func_set_ftrace_file.tc
··· 2 2 # SPDX-License-Identifier: GPL-2.0 3 3 # description: ftrace - test reading of set_ftrace_filter 4 4 # 5 + # The triggers are set within the set_ftrace_filter file 6 + # requires: set_ftrace_filter 7 + # 5 8 # The set_ftrace_filter file of ftrace is used to list functions as well as 6 9 # triggers (probes) attached to functions. The code to read this file is not 7 10 # straight forward and has had various bugs in the past. This test is designed 8 11 # to add functions and triggers to that file in various ways and read that 9 12 # file in various ways (cat vs dd). 10 13 # 11 - 12 - # The triggers are set within the set_ftrace_filter file 13 - check_filter_file set_ftrace_filter 14 14 15 15 fail() { # mesg 16 16 echo $1
+1 -7
tools/testing/selftests/ftrace/test.d/ftrace/func_stack_tracer.tc
··· 1 1 #!/bin/sh 2 2 # SPDX-License-Identifier: GPL-2.0 3 3 # description: ftrace - Max stack tracer 4 + # requires: stack_trace stack_trace_filter 4 5 # Test the basic function of max-stack usage tracing 5 - 6 - if [ ! -f stack_trace ]; then 7 - echo "Max stack tracer is not supported - please make CONFIG_STACK_TRACER=y" 8 - exit_unsupported 9 - fi 10 - 11 - check_filter_file stack_trace_filter 12 6 13 7 echo > stack_trace_filter 14 8 echo 0 > stack_max_size
+3 -3
tools/testing/selftests/ftrace/test.d/ftrace/func_traceonoff_triggers.tc
··· 3 3 # description: ftrace - test for function traceon/off triggers 4 4 # flags: instance 5 5 # 6 + # The triggers are set within the set_ftrace_filter file 7 + # requires: set_ftrace_filter 8 + # 6 9 # Ftrace allows to add triggers to functions, such as enabling or disabling 7 10 # tracing, enabling or disabling trace events, or recording a stack trace 8 11 # within the ring buffer. 9 12 # 10 13 # This test is designed to test enabling and disabling tracing triggers 11 14 # 12 - 13 - # The triggers are set within the set_ftrace_filter file 14 - check_filter_file set_ftrace_filter 15 15 16 16 fail() { # mesg 17 17 echo $1
+3 -9
tools/testing/selftests/ftrace/test.d/ftrace/tracing-error-log.tc
··· 1 1 #!/bin/sh 2 2 # SPDX-License-Identifier: GPL-2.0 3 3 # description: ftrace - test tracing error log support 4 + # event tracing is currently the only ftrace tracer that uses the 5 + # tracing error_log, hence this check 6 + # requires: set_event error_log 4 7 5 8 fail() { #msg 6 9 echo $1 7 10 exit_fail 8 11 } 9 - 10 - # event tracing is currently the only ftrace tracer that uses the 11 - # tracing error_log, hence this check 12 - if [ ! -f set_event ]; then 13 - echo "event tracing is not supported" 14 - exit_unsupported 15 - fi 16 - 17 - [ -f error_log ] || exit_unsupported 18 12 19 13 ftrace_errlog_check 'event filter parse error' '((sig >= 10 && sig < 15) || dsig ^== 17) && comm != bash' 'events/signal/signal_generate/filter' 20 14
+21 -7
tools/testing/selftests/ftrace/test.d/functions
··· 1 - check_filter_file() { # check filter file introduced by dynamic ftrace 2 - if [ ! -f "$1" ]; then 3 - echo "$1 not found? Is dynamic ftrace not set?" 4 - exit_unsupported 5 - fi 6 - } 7 - 8 1 clear_trace() { # reset trace output 9 2 echo > trace 10 3 } ··· 104 111 [ -f snapshot ] && echo 0 > snapshot 105 112 clear_trace 106 113 enable_tracing 114 + } 115 + 116 + check_requires() { # Check required files and tracers 117 + for i in "$@" ; do 118 + r=${i%:README} 119 + t=${i%:tracer} 120 + if [ $t != $i ]; then 121 + if ! grep -wq $t available_tracers ; then 122 + echo "Required tracer $t is not configured." 123 + exit_unsupported 124 + fi 125 + elif [ $r != $i ]; then 126 + if ! grep -Fq "$r" README ; then 127 + echo "Required feature pattern \"$r\" is not in README." 128 + exit_unsupported 129 + fi 130 + elif [ ! -e $i ]; then 131 + echo "Required feature interface $i doesn't exist." 132 + exit_unsupported 133 + fi 134 + done 107 135 } 108 136 109 137 LOCALHOST=127.0.0.1
+1 -5
tools/testing/selftests/ftrace/test.d/instances/instance-event.tc
··· 1 1 #!/bin/sh 2 2 # SPDX-License-Identifier: GPL-2.0 3 3 # description: Test creation and deletion of trace instances while setting an event 4 - 5 - if [ ! -d instances ] ; then 6 - echo "no instance directory with this kernel" 7 - exit_unsupported; 8 - fi 4 + # requires: instances 9 5 10 6 fail() { # mesg 11 7 rmdir foo 2>/dev/null
+1 -5
tools/testing/selftests/ftrace/test.d/instances/instance.tc
··· 1 1 #!/bin/sh 2 2 # SPDX-License-Identifier: GPL-2.0 3 3 # description: Test creation and deletion of trace instances 4 - 5 - if [ ! -d instances ] ; then 6 - echo "no instance directory with this kernel" 7 - exit_unsupported; 8 - fi 4 + # requires: instances 9 5 10 6 fail() { # mesg 11 7 rmdir x y z 2>/dev/null
+1 -2
tools/testing/selftests/ftrace/test.d/kprobe/add_and_remove.tc
··· 1 1 #!/bin/sh 2 2 # SPDX-License-Identifier: GPL-2.0 3 3 # description: Kprobe dynamic event - adding and removing 4 - 5 - [ -f kprobe_events ] || exit_unsupported # this is configurable 4 + # requires: kprobe_events 6 5 7 6 echo p:myevent _do_fork > kprobe_events 8 7 grep myevent kprobe_events
+1 -2
tools/testing/selftests/ftrace/test.d/kprobe/busy_check.tc
··· 1 1 #!/bin/sh 2 2 # SPDX-License-Identifier: GPL-2.0 3 3 # description: Kprobe dynamic event - busy event check 4 - 5 - [ -f kprobe_events ] || exit_unsupported 4 + # requires: kprobe_events 6 5 7 6 echo p:myevent _do_fork > kprobe_events 8 7 test -d events/kprobes/myevent
+1 -2
tools/testing/selftests/ftrace/test.d/kprobe/kprobe_args.tc
··· 1 1 #!/bin/sh 2 2 # SPDX-License-Identifier: GPL-2.0 3 3 # description: Kprobe dynamic event with arguments 4 - 5 - [ -f kprobe_events ] || exit_unsupported # this is configurable 4 + # requires: kprobe_events 6 5 7 6 echo 'p:testprobe _do_fork $stack $stack0 +0($stack)' > kprobe_events 8 7 grep testprobe kprobe_events | grep -q 'arg1=\$stack arg2=\$stack0 arg3=+0(\$stack)'
+1 -2
tools/testing/selftests/ftrace/test.d/kprobe/kprobe_args_comm.tc
··· 1 1 #!/bin/sh 2 2 # SPDX-License-Identifier: GPL-2.0 3 3 # description: Kprobe event with comm arguments 4 - 5 - [ -f kprobe_events ] || exit_unsupported # this is configurable 4 + # requires: kprobe_events 6 5 7 6 grep -A1 "fetcharg:" README | grep -q "\$comm" || exit_unsupported # this is too old 8 7
+1 -2
tools/testing/selftests/ftrace/test.d/kprobe/kprobe_args_string.tc
··· 1 1 #!/bin/sh 2 2 # SPDX-License-Identifier: GPL-2.0 3 3 # description: Kprobe event string type argument 4 - 5 - [ -f kprobe_events ] || exit_unsupported # this is configurable 4 + # requires: kprobe_events 6 5 7 6 case `uname -m` in 8 7 x86_64)
+1 -2
tools/testing/selftests/ftrace/test.d/kprobe/kprobe_args_symbol.tc
··· 1 1 #!/bin/sh 2 2 # SPDX-License-Identifier: GPL-2.0 3 3 # description: Kprobe event symbol argument 4 - 5 - [ -f kprobe_events ] || exit_unsupported # this is configurable 4 + # requires: kprobe_events 6 5 7 6 SYMBOL="linux_proc_banner" 8 7
+1 -4
tools/testing/selftests/ftrace/test.d/kprobe/kprobe_args_syntax.tc
··· 1 1 #!/bin/sh 2 2 # SPDX-License-Identifier: GPL-2.0 3 3 # description: Kprobe event argument syntax 4 - 5 - [ -f kprobe_events ] || exit_unsupported # this is configurable 6 - 7 - grep "x8/16/32/64" README > /dev/null || exit_unsupported # version issue 4 + # requires: kprobe_events "x8/16/32/64":README 8 5 9 6 PROBEFUNC="vfs_read" 10 7 GOODREG=
+1 -4
tools/testing/selftests/ftrace/test.d/kprobe/kprobe_args_type.tc
··· 1 1 #!/bin/sh 2 2 # SPDX-License-Identifier: GPL-2.0 3 3 # description: Kprobes event arguments with types 4 - 5 - [ -f kprobe_events ] || exit_unsupported # this is configurable 6 - 7 - grep "x8/16/32/64" README > /dev/null || exit_unsupported # version issue 4 + # requires: kprobe_events "x8/16/32/64":README 8 5 9 6 gen_event() { # Bitsize 10 7 echo "p:testprobe _do_fork \$stack0:s$1 \$stack0:u$1 \$stack0:x$1 \$stack0:b4@4/$1"
+1 -3
tools/testing/selftests/ftrace/test.d/kprobe/kprobe_args_user.tc
··· 1 1 #!/bin/sh 2 2 # SPDX-License-Identifier: GPL-2.0 3 3 # description: Kprobe event user-memory access 4 + # requires: kprobe_events '$arg<N>':README 4 5 5 - [ -f kprobe_events ] || exit_unsupported # this is configurable 6 - 7 - grep -q '\$arg<N>' README || exit_unresolved # depends on arch 8 6 grep -A10 "fetcharg:" README | grep -q 'ustring' || exit_unsupported 9 7 grep -A10 "fetcharg:" README | grep -q '\[u\]<offset>' || exit_unsupported 10 8
+1 -2
tools/testing/selftests/ftrace/test.d/kprobe/kprobe_eventname.tc
··· 1 1 #!/bin/sh 2 2 # SPDX-License-Identifier: GPL-2.0 3 3 # description: Kprobe event auto/manual naming 4 - 5 - [ -f kprobe_events ] || exit_unsupported # this is configurable 4 + # requires: kprobe_events 6 5 7 6 :;: "Add an event on function without name" ;: 8 7
+1 -5
tools/testing/selftests/ftrace/test.d/kprobe/kprobe_ftrace.tc
··· 1 1 #!/bin/sh 2 2 # SPDX-License-Identifier: GPL-2.0 3 3 # description: Kprobe dynamic event with function tracer 4 - 5 - [ -f kprobe_events ] || exit_unsupported # this is configurable 6 - grep "function" available_tracers || exit_unsupported # this is configurable 7 - 8 - check_filter_file set_ftrace_filter 4 + # requires: kprobe_events stack_trace_filter function:tracer 9 5 10 6 # prepare 11 7 echo nop > current_tracer
+1 -2
tools/testing/selftests/ftrace/test.d/kprobe/kprobe_module.tc
··· 1 1 #!/bin/sh 2 2 # SPDX-License-Identifier: GPL-2.0 3 3 # description: Kprobe dynamic event - probing module 4 - 5 - [ -f kprobe_events ] || exit_unsupported # this is configurable 4 + # requires: kprobe_events 6 5 7 6 rmmod trace-printk ||: 8 7 if ! modprobe trace-printk ; then
+1 -4
tools/testing/selftests/ftrace/test.d/kprobe/kprobe_multiprobe.tc
··· 1 1 #!/bin/sh 2 2 # SPDX-License-Identifier: GPL-2.0 3 3 # description: Create/delete multiprobe on kprobe event 4 - 5 - [ -f kprobe_events ] || exit_unsupported 6 - 7 - grep -q "Create/append/" README || exit_unsupported 4 + # requires: kprobe_events "Create/append/":README 8 5 9 6 # Choose 2 symbols for target 10 7 SYM1=_do_fork
+1 -4
tools/testing/selftests/ftrace/test.d/kprobe/kprobe_syntax_errors.tc
··· 1 1 #!/bin/sh 2 2 # SPDX-License-Identifier: GPL-2.0 3 3 # description: Kprobe event parser error log check 4 - 5 - [ -f kprobe_events ] || exit_unsupported # this is configurable 6 - 7 - [ -f error_log ] || exit_unsupported 4 + # requires: kprobe_events error_log 8 5 9 6 check_error() { # command-with-error-pos-by-^ 10 7 ftrace_errlog_check 'trace_kprobe' "$1" 'kprobe_events'
+1 -2
tools/testing/selftests/ftrace/test.d/kprobe/kretprobe_args.tc
··· 1 1 #!/bin/sh 2 2 # SPDX-License-Identifier: GPL-2.0 3 3 # description: Kretprobe dynamic event with arguments 4 - 5 - [ -f kprobe_events ] || exit_unsupported # this is configurable 4 + # requires: kprobe_events 6 5 7 6 # Add new kretprobe event 8 7 echo 'r:testprobe2 _do_fork $retval' > kprobe_events
+1 -3
tools/testing/selftests/ftrace/test.d/kprobe/kretprobe_maxactive.tc
··· 1 1 #!/bin/sh 2 2 # SPDX-License-Identifier: GPL-2.0 3 3 # description: Kretprobe dynamic event with maxactive 4 - 5 - [ -f kprobe_events ] || exit_unsupported # this is configurable 6 - grep -q 'r\[maxactive\]' README || exit_unsupported # this is older version 4 + # requires: kprobe_events 'r[maxactive]':README 7 5 8 6 # Test if we successfully reject unknown messages 9 7 if echo 'a:myprobeaccept inet_csk_accept' > kprobe_events; then false; else true; fi
+1 -2
tools/testing/selftests/ftrace/test.d/kprobe/multiple_kprobes.tc
··· 1 1 #!/bin/sh 2 2 # SPDX-License-Identifier: GPL-2.0 3 3 # description: Register/unregister many kprobe events 4 - 5 - [ -f kprobe_events ] || exit_unsupported # this is configurable 4 + # requires: kprobe_events 6 5 7 6 # ftrace fentry skip size depends on the machine architecture. 8 7 # Currently HAVE_KPROBES_ON_FTRACE defined on x86 and powerpc64le
+1 -2
tools/testing/selftests/ftrace/test.d/kprobe/probepoint.tc
··· 1 1 #!/bin/sh 2 2 # SPDX-License-Identifier: GPL-2.0 3 3 # description: Kprobe events - probe points 4 - 5 - [ -f kprobe_events ] || exit_unsupported # this is configurable 4 + # requires: kprobe_events 6 5 7 6 TARGET_FUNC=tracefs_create_dir 8 7
+1 -2
tools/testing/selftests/ftrace/test.d/kprobe/profile.tc
··· 1 1 #!/bin/sh 2 2 # SPDX-License-Identifier: GPL-2.0 3 3 # description: Kprobe dynamic event - adding and removing 4 - 5 - [ -f kprobe_events ] || exit_unsupported # this is configurable 4 + # requires: kprobe_events 6 5 7 6 ! grep -q 'myevent' kprobe_profile 8 7 echo p:myevent _do_fork > kprobe_events
+1 -4
tools/testing/selftests/ftrace/test.d/kprobe/uprobe_syntax_errors.tc
··· 1 1 #!/bin/sh 2 2 # SPDX-License-Identifier: GPL-2.0 3 3 # description: Uprobe event parser error log check 4 - 5 - [ -f uprobe_events ] || exit_unsupported # this is configurable 6 - 7 - [ -f error_log ] || exit_unsupported 4 + # requires: uprobe_events error_log 8 5 9 6 check_error() { # command-with-error-pos-by-^ 10 7 ftrace_errlog_check 'trace_uprobe' "$1" 'uprobe_events'
+1 -3
tools/testing/selftests/ftrace/test.d/preemptirq/irqsoff_tracer.tc
··· 1 1 #!/bin/sh 2 2 # SPDX-License-Identifier: GPL-2.0 3 3 # description: test for the preemptirqsoff tracer 4 + # requires: preemptoff:tracer irqsoff:tracer 4 5 5 6 MOD=preemptirq_delay_test 6 7 ··· 27 26 28 27 modprobe $MOD || unres "$MOD module not available" 29 28 rmmod $MOD 30 - 31 - grep -q "preemptoff" available_tracers || unsup "preemptoff tracer not enabled" 32 - grep -q "irqsoff" available_tracers || unsup "irqsoff tracer not enabled" 33 29 34 30 reset_tracer 35 31
+4
tools/testing/selftests/ftrace/test.d/template
··· 1 1 #!/bin/sh 2 2 # SPDX-License-Identifier: GPL-2.0 3 3 # description: %HERE DESCRIBE WHAT THIS DOES% 4 + # requires: %HERE LIST THE REQUIRED FILES, TRACERS OR README-STRINGS% 5 + # The required tracer needs :tracer suffix, e.g. function:tracer 6 + # The required README string needs :README suffix, e.g. "x8/16/32/64":README 7 + # and the README string is treated as a fixed-string instead of regexp pattern. 4 8 # you have to add ".tc" extention for your testcase file 5 9 # Note that all tests are run with "errexit" option. 6 10
+1 -5
tools/testing/selftests/ftrace/test.d/tracer/wakeup.tc
··· 1 1 #!/bin/sh 2 2 # SPDX-License-Identifier: GPL-2.0 3 3 # description: Test wakeup tracer 4 + # requires: wakeup:tracer 4 5 5 6 if ! which chrt ; then 6 7 echo "chrt is not found. This test requires nice command." 7 8 exit_unresolved 8 - fi 9 - 10 - if ! grep -wq "wakeup" available_tracers ; then 11 - echo "wakeup tracer is not supported" 12 - exit_unsupported 13 9 fi 14 10 15 11 echo wakeup > current_tracer
+1 -5
tools/testing/selftests/ftrace/test.d/tracer/wakeup_rt.tc
··· 1 1 #!/bin/sh 2 2 # SPDX-License-Identifier: GPL-2.0 3 3 # description: Test wakeup RT tracer 4 + # requires: wakeup_rt:tracer 4 5 5 6 if ! which chrt ; then 6 7 echo "chrt is not found. This test requires chrt command." 7 8 exit_unresolved 8 - fi 9 - 10 - if ! grep -wq "wakeup_rt" available_tracers ; then 11 - echo "wakeup_rt tracer is not supported" 12 - exit_unsupported 13 9 fi 14 10 15 11 echo wakeup_rt > current_tracer
+1 -12
tools/testing/selftests/ftrace/test.d/trigger/inter-event/trigger-action-hist-xfail.tc
··· 1 1 #!/bin/sh 2 2 # SPDX-License-Identifier: GPL-2.0 3 3 # description: event trigger - test inter-event histogram trigger expected fail actions 4 + # requires: set_event snapshot "snapshot()":README 4 5 5 6 fail() { #msg 6 7 echo $1 7 8 exit_fail 8 9 } 9 - 10 - if [ ! -f set_event ]; then 11 - echo "event tracing is not supported" 12 - exit_unsupported 13 - fi 14 - 15 - if [ ! -f snapshot ]; then 16 - echo "snapshot is not supported" 17 - exit_unsupported 18 - fi 19 - 20 - grep -q "snapshot()" README || exit_unsupported # version issue 21 10 22 11 echo "Test expected snapshot action failure" 23 12
+1 -15
tools/testing/selftests/ftrace/test.d/trigger/inter-event/trigger-field-variable-support.tc
··· 1 1 #!/bin/sh 2 2 # SPDX-License-Identifier: GPL-2.0 3 3 # description: event trigger - test field variable support 4 + # requires: set_event synthetic_events events/sched/sched_process_fork/hist 4 5 5 6 fail() { #msg 6 7 echo $1 7 8 exit_fail 8 9 } 9 - 10 - if [ ! -f set_event ]; then 11 - echo "event tracing is not supported" 12 - exit_unsupported 13 - fi 14 - 15 - if [ ! -f synthetic_events ]; then 16 - echo "synthetic event is not supported" 17 - exit_unsupported 18 - fi 19 - 20 - if [ ! -f events/sched/sched_process_fork/hist ]; then 21 - echo "hist trigger is not supported" 22 - exit_unsupported 23 - fi 24 10 25 11 echo "Test field variable support" 26 12
+1 -15
tools/testing/selftests/ftrace/test.d/trigger/inter-event/trigger-inter-event-combined-hist.tc
··· 1 1 #!/bin/sh 2 2 # SPDX-License-Identifier: GPL-2.0 3 3 # description: event trigger - test inter-event combined histogram trigger 4 + # requires: set_event synthetic_events events/sched/sched_process_fork/hist 4 5 5 6 fail() { #msg 6 7 echo $1 7 8 exit_fail 8 9 } 9 - 10 - if [ ! -f set_event ]; then 11 - echo "event tracing is not supported" 12 - exit_unsupported 13 - fi 14 - 15 - if [ ! -f synthetic_events ]; then 16 - echo "synthetic event is not supported" 17 - exit_unsupported 18 - fi 19 - 20 - if [ ! -f events/sched/sched_process_fork/hist ]; then 21 - echo "hist trigger is not supported" 22 - exit_unsupported 23 - fi 24 10 25 11 echo "Test create synthetic event" 26 12
+1 -15
tools/testing/selftests/ftrace/test.d/trigger/inter-event/trigger-multi-actions-accept.tc
··· 1 1 #!/bin/sh 2 2 # SPDX-License-Identifier: GPL-2.0 3 3 # description: event trigger - test multiple actions on hist trigger 4 + # requires: set_event synthetic_events events/sched/sched_process_fork/hist 4 5 5 6 fail() { #msg 6 7 echo $1 7 8 exit_fail 8 9 } 9 - 10 - if [ ! -f set_event ]; then 11 - echo "event tracing is not supported" 12 - exit_unsupported 13 - fi 14 - 15 - if [ ! -f synthetic_events ]; then 16 - echo "synthetic event is not supported" 17 - exit_unsupported 18 - fi 19 - 20 - if [ ! -f events/sched/sched_process_fork/hist ]; then 21 - echo "hist trigger is not supported" 22 - exit_unsupported 23 - fi 24 10 25 11 echo "Test multiple actions on hist trigger" 26 12 echo 'wakeup_latency u64 lat; pid_t pid' >> synthetic_events
+1 -7
tools/testing/selftests/ftrace/test.d/trigger/inter-event/trigger-onchange-action-hist.tc
··· 1 1 #!/bin/sh 2 2 # SPDX-License-Identifier: GPL-2.0 3 3 # description: event trigger - test inter-event histogram trigger onchange action 4 + # requires: set_event "onchange(var)":README 4 5 5 6 fail() { #msg 6 7 echo $1 7 8 exit_fail 8 9 } 9 - 10 - if [ ! -f set_event ]; then 11 - echo "event tracing is not supported" 12 - exit_unsupported 13 - fi 14 - 15 - grep -q "onchange(var)" README || exit_unsupported # version issue 16 10 17 11 echo "Test onchange action" 18 12
+1 -15
tools/testing/selftests/ftrace/test.d/trigger/inter-event/trigger-onmatch-action-hist.tc
··· 1 1 #!/bin/sh 2 2 # SPDX-License-Identifier: GPL-2.0 3 3 # description: event trigger - test inter-event histogram trigger onmatch action 4 + # requires: set_event synthetic_events events/sched/sched_process_fork/hist 4 5 5 6 fail() { #msg 6 7 echo $1 7 8 exit_fail 8 9 } 9 - 10 - if [ ! -f set_event ]; then 11 - echo "event tracing is not supported" 12 - exit_unsupported 13 - fi 14 - 15 - if [ ! -f synthetic_events ]; then 16 - echo "synthetic event is not supported" 17 - exit_unsupported 18 - fi 19 - 20 - if [ ! -f events/sched/sched_process_fork/hist ]; then 21 - echo "hist trigger is not supported" 22 - exit_unsupported 23 - fi 24 10 25 11 echo "Test create synthetic event" 26 12
+1 -15
tools/testing/selftests/ftrace/test.d/trigger/inter-event/trigger-onmatch-onmax-action-hist.tc
··· 1 1 #!/bin/sh 2 2 # SPDX-License-Identifier: GPL-2.0 3 3 # description: event trigger - test inter-event histogram trigger onmatch-onmax action 4 + # requires: set_event synthetic_events events/sched/sched_process_fork/hist 4 5 5 6 fail() { #msg 6 7 echo $1 7 8 exit_fail 8 9 } 9 - 10 - if [ ! -f set_event ]; then 11 - echo "event tracing is not supported" 12 - exit_unsupported 13 - fi 14 - 15 - if [ ! -f synthetic_events ]; then 16 - echo "synthetic event is not supported" 17 - exit_unsupported 18 - fi 19 - 20 - if [ ! -f events/sched/sched_process_fork/hist ]; then 21 - echo "hist trigger is not supported" 22 - exit_unsupported 23 - fi 24 10 25 11 echo "Test create synthetic event" 26 12
+1 -15
tools/testing/selftests/ftrace/test.d/trigger/inter-event/trigger-onmax-action-hist.tc
··· 1 1 #!/bin/sh 2 2 # SPDX-License-Identifier: GPL-2.0 3 3 # description: event trigger - test inter-event histogram trigger onmax action 4 + # requires: set_event synthetic_events events/sched/sched_process_fork/hist 4 5 5 6 fail() { #msg 6 7 echo $1 7 8 exit_fail 8 9 } 9 - 10 - if [ ! -f set_event ]; then 11 - echo "event tracing is not supported" 12 - exit_unsupported 13 - fi 14 - 15 - if [ ! -f synthetic_events ]; then 16 - echo "synthetic event is not supported" 17 - exit_unsupported 18 - fi 19 - 20 - if [ ! -f events/sched/sched_process_fork/hist ]; then 21 - echo "hist trigger is not supported" 22 - exit_unsupported 23 - fi 24 10 25 11 echo "Test create synthetic event" 26 12
+1 -19
tools/testing/selftests/ftrace/test.d/trigger/inter-event/trigger-snapshot-action-hist.tc
··· 1 1 #!/bin/sh 2 2 # SPDX-License-Identifier: GPL-2.0 3 3 # description: event trigger - test inter-event histogram trigger snapshot action 4 + # requires: set_event snapshot events/sched/sched_process_fork/hist "onchange(var)":README "snapshot()":README 4 5 5 6 fail() { #msg 6 7 echo $1 7 8 exit_fail 8 9 } 9 - 10 - if [ ! -f set_event ]; then 11 - echo "event tracing is not supported" 12 - exit_unsupported 13 - fi 14 - 15 - if [ ! -f events/sched/sched_process_fork/hist ]; then 16 - echo "hist trigger is not supported" 17 - exit_unsupported 18 - fi 19 - 20 - if [ ! -f snapshot ]; then 21 - echo "snapshot is not supported" 22 - exit_unsupported 23 - fi 24 - 25 - grep -q "onchange(var)" README || exit_unsupported # version issue 26 - 27 - grep -q "snapshot()" README || exit_unsupported # version issue 28 10 29 11 echo "Test snapshot action" 30 12
+1 -10
tools/testing/selftests/ftrace/test.d/trigger/inter-event/trigger-synthetic-event-createremove.tc
··· 1 1 #!/bin/sh 2 2 # SPDX-License-Identifier: GPL-2.0 3 3 # description: event trigger - test synthetic event create remove 4 + # requires: set_event synthetic_events 4 5 5 6 fail() { #msg 6 7 echo $1 7 8 exit_fail 8 9 } 9 - 10 - if [ ! -f set_event ]; then 11 - echo "event tracing is not supported" 12 - exit_unsupported 13 - fi 14 - 15 - if [ ! -f synthetic_events ]; then 16 - echo "synthetic event is not supported" 17 - exit_unsupported 18 - fi 19 10 20 11 echo "Test create synthetic event" 21 12
+1 -10
tools/testing/selftests/ftrace/test.d/trigger/inter-event/trigger-synthetic-event-syntax.tc
··· 1 1 #!/bin/sh 2 2 # SPDX-License-Identifier: GPL-2.0 3 3 # description: event trigger - test synthetic_events syntax parser 4 + # requires: set_event synthetic_events 4 5 5 6 do_reset() { 6 7 reset_trigger ··· 14 13 echo $1 15 14 exit_fail 16 15 } 17 - 18 - if [ ! -f set_event ]; then 19 - echo "event tracing is not supported" 20 - exit_unsupported 21 - fi 22 - 23 - if [ ! -f synthetic_events ]; then 24 - echo "synthetic event is not supported" 25 - exit_unsupported 26 - fi 27 16 28 17 reset_tracer 29 18 do_reset
+1 -17
tools/testing/selftests/ftrace/test.d/trigger/inter-event/trigger-trace-action-hist.tc
··· 1 1 #!/bin/sh 2 2 # SPDX-License-Identifier: GPL-2.0 3 3 # description: event trigger - test inter-event histogram trigger trace action 4 + # requires: set_event synthetic_events events/sched/sched_process_fork/hist "trace(<synthetic_event>":README 4 5 5 6 fail() { #msg 6 7 echo $1 7 8 exit_fail 8 9 } 9 - 10 - if [ ! -f set_event ]; then 11 - echo "event tracing is not supported" 12 - exit_unsupported 13 - fi 14 - 15 - if [ ! -f synthetic_events ]; then 16 - echo "synthetic event is not supported" 17 - exit_unsupported 18 - fi 19 - 20 - if [ ! -f events/sched/sched_process_fork/hist ]; then 21 - echo "hist trigger is not supported" 22 - exit_unsupported 23 - fi 24 - 25 - grep -q "trace(<synthetic_event>" README || exit_unsupported # version issue 26 10 27 11 echo "Test create synthetic event" 28 12
+1 -10
tools/testing/selftests/ftrace/test.d/trigger/trigger-eventonoff.tc
··· 1 1 #!/bin/sh 2 2 # SPDX-License-Identifier: GPL-2.0 3 3 # description: event trigger - test event enable/disable trigger 4 + # requires: set_event events/sched/sched_process_fork/trigger 4 5 # flags: instance 5 6 6 7 fail() { #msg 7 8 echo $1 8 9 exit_fail 9 10 } 10 - 11 - if [ ! -f set_event -o ! -d events/sched ]; then 12 - echo "event tracing is not supported" 13 - exit_unsupported 14 - fi 15 - 16 - if [ ! -f events/sched/sched_process_fork/trigger ]; then 17 - echo "event trigger is not supported" 18 - exit_unsupported 19 - fi 20 11 21 12 FEATURE=`grep enable_event events/sched/sched_process_fork/trigger` 22 13 if [ -z "$FEATURE" ]; then
+1 -10
tools/testing/selftests/ftrace/test.d/trigger/trigger-filter.tc
··· 1 1 #!/bin/sh 2 2 # SPDX-License-Identifier: GPL-2.0 3 3 # description: event trigger - test trigger filter 4 + # requires: set_event events/sched/sched_process_fork/trigger 4 5 # flags: instance 5 6 6 7 fail() { #msg 7 8 echo $1 8 9 exit_fail 9 10 } 10 - 11 - if [ ! -f set_event -o ! -d events/sched ]; then 12 - echo "event tracing is not supported" 13 - exit_unsupported 14 - fi 15 - 16 - if [ ! -f events/sched/sched_process_fork/trigger ]; then 17 - echo "event trigger is not supported" 18 - exit_unsupported 19 - fi 20 11 21 12 echo "Test trigger filter" 22 13 echo 1 > tracing_on
+1 -15
tools/testing/selftests/ftrace/test.d/trigger/trigger-hist-mod.tc
··· 1 1 #!/bin/sh 2 2 # SPDX-License-Identifier: GPL-2.0 3 3 # description: event trigger - test histogram modifiers 4 + # requires: set_event events/sched/sched_process_fork/trigger events/sched/sched_process_fork/hist 4 5 # flags: instance 5 6 6 7 fail() { #msg 7 8 echo $1 8 9 exit_fail 9 10 } 10 - 11 - if [ ! -f set_event -o ! -d events/sched ]; then 12 - echo "event tracing is not supported" 13 - exit_unsupported 14 - fi 15 - 16 - if [ ! -f events/sched/sched_process_fork/trigger ]; then 17 - echo "event trigger is not supported" 18 - exit_unsupported 19 - fi 20 - 21 - if [ ! -f events/sched/sched_process_fork/hist ]; then 22 - echo "hist trigger is not supported" 23 - exit_unsupported 24 - fi 25 11 26 12 echo "Test histogram with execname modifier" 27 13
+1 -17
tools/testing/selftests/ftrace/test.d/trigger/trigger-hist-syntax-errors.tc
··· 1 1 #!/bin/sh 2 2 # SPDX-License-Identifier: GPL-2.0 3 3 # description: event trigger - test histogram parser errors 4 - 5 - if [ ! -f set_event -o ! -d events/kmem ]; then 6 - echo "event tracing is not supported" 7 - exit_unsupported 8 - fi 9 - 10 - if [ ! -f events/kmem/kmalloc/trigger ]; then 11 - echo "event trigger is not supported" 12 - exit_unsupported 13 - fi 14 - 15 - if [ ! -f events/kmem/kmalloc/hist ]; then 16 - echo "hist trigger is not supported" 17 - exit_unsupported 18 - fi 19 - 20 - [ -f error_log ] || exit_unsupported 4 + # requires: set_event events/kmem/kmalloc/trigger events/kmem/kmalloc/hist error_log 21 5 22 6 check_error() { # command-with-error-pos-by-^ 23 7 ftrace_errlog_check 'hist:kmem:kmalloc' "$1" 'events/kmem/kmalloc/trigger'
+2 -16
tools/testing/selftests/ftrace/test.d/trigger/trigger-hist.tc
··· 1 1 #!/bin/sh 2 2 # SPDX-License-Identifier: GPL-2.0 3 3 # description: event trigger - test histogram trigger 4 + # requires: set_event events/sched/sched_process_fork/trigger events/sched/sched_process_fork/hist 4 5 # flags: instance 5 6 6 7 fail() { #msg ··· 9 8 exit_fail 10 9 } 11 10 12 - if [ ! -f set_event -o ! -d events/sched ]; then 13 - echo "event tracing is not supported" 14 - exit_unsupported 15 - fi 16 - 17 - if [ ! -f events/sched/sched_process_fork/trigger ]; then 18 - echo "event trigger is not supported" 19 - exit_unsupported 20 - fi 21 - 22 - if [ ! -f events/sched/sched_process_fork/hist ]; then 23 - echo "hist trigger is not supported" 24 - exit_unsupported 25 - fi 26 - 27 - echo "Test histogram basic tigger" 11 + echo "Test histogram basic trigger" 28 12 29 13 echo 'hist:keys=parent_pid:vals=child_pid' > events/sched/sched_process_fork/trigger 30 14 for i in `seq 1 10` ; do ( echo "forked" > /dev/null); done
+1 -15
tools/testing/selftests/ftrace/test.d/trigger/trigger-multihist.tc
··· 1 1 #!/bin/sh 2 2 # SPDX-License-Identifier: GPL-2.0 3 3 # description: event trigger - test multiple histogram triggers 4 + # requires: set_event events/sched/sched_process_fork/trigger events/sched/sched_process_fork/hist 4 5 # flags: instance 5 6 6 7 fail() { #msg 7 8 echo $1 8 9 exit_fail 9 10 } 10 - 11 - if [ ! -f set_event -o ! -d events/sched ]; then 12 - echo "event tracing is not supported" 13 - exit_unsupported 14 - fi 15 - 16 - if [ ! -f events/sched/sched_process_fork/trigger ]; then 17 - echo "event trigger is not supported" 18 - exit_unsupported 19 - fi 20 - 21 - if [ ! -f events/sched/sched_process_fork/hist ]; then 22 - echo "hist trigger is not supported" 23 - exit_unsupported 24 - fi 25 11 26 12 echo "Test histogram multiple triggers" 27 13
+1 -15
tools/testing/selftests/ftrace/test.d/trigger/trigger-snapshot.tc
··· 1 1 #!/bin/sh 2 2 # SPDX-License-Identifier: GPL-2.0 3 3 # description: event trigger - test snapshot-trigger 4 + # requires: set_event events/sched/sched_process_fork/trigger snapshot 4 5 5 6 fail() { #msg 6 7 echo $1 7 8 exit_fail 8 9 } 9 - 10 - if [ ! -f set_event -o ! -d events/sched ]; then 11 - echo "event tracing is not supported" 12 - exit_unsupported 13 - fi 14 - 15 - if [ ! -f events/sched/sched_process_fork/trigger ]; then 16 - echo "event trigger is not supported" 17 - exit_unsupported 18 - fi 19 - 20 - if [ ! -f snapshot ]; then 21 - echo "snapshot is not supported" 22 - exit_unsupported 23 - fi 24 10 25 11 FEATURE=`grep snapshot events/sched/sched_process_fork/trigger` 26 12 if [ -z "$FEATURE" ]; then
+2 -11
tools/testing/selftests/ftrace/test.d/trigger/trigger-stacktrace.tc
··· 1 1 #!/bin/sh 2 2 # SPDX-License-Identifier: GPL-2.0 3 3 # description: event trigger - test stacktrace-trigger 4 + # requires: set_event events/sched/sched_process_fork/trigger 4 5 5 6 fail() { #msg 6 7 echo $1 7 8 exit_fail 8 9 } 9 - 10 - if [ ! -f set_event -o ! -d events/sched ]; then 11 - echo "event tracing is not supported" 12 - exit_unsupported 13 - fi 14 - 15 - if [ ! -f events/sched/sched_process_fork/trigger ]; then 16 - echo "event trigger is not supported" 17 - exit_unsupported 18 - fi 19 10 20 11 FEATURE=`grep stacktrace events/sched/sched_process_fork/trigger` 21 12 if [ -z "$FEATURE" ]; then ··· 14 23 exit_unsupported 15 24 fi 16 25 17 - echo "Test stacktrace tigger" 26 + echo "Test stacktrace trigger" 18 27 echo 0 > trace 19 28 echo 0 > options/stacktrace 20 29 echo 'stacktrace' > events/sched/sched_process_fork/trigger
+2 -21
tools/testing/selftests/ftrace/test.d/trigger/trigger-trace-marker-hist.tc
··· 1 1 #!/bin/sh 2 2 # SPDX-License-Identifier: GPL-2.0 3 3 # description: trace_marker trigger - test histogram trigger 4 + # requires: set_event events/ftrace/print/trigger events/ftrace/print/hist 4 5 # flags: instance 5 6 6 7 fail() { #msg ··· 9 8 exit_fail 10 9 } 11 10 12 - if [ ! -f set_event ]; then 13 - echo "event tracing is not supported" 14 - exit_unsupported 15 - fi 16 - 17 - if [ ! -d events/ftrace/print ]; then 18 - echo "event trace_marker is not supported" 19 - exit_unsupported 20 - fi 21 - 22 - if [ ! -f events/ftrace/print/trigger ]; then 23 - echo "event trigger is not supported" 24 - exit_unsupported 25 - fi 26 - 27 - if [ ! -f events/ftrace/print/hist ]; then 28 - echo "hist trigger is not supported" 29 - exit_unsupported 30 - fi 31 - 32 - echo "Test histogram trace_marker tigger" 11 + echo "Test histogram trace_marker trigger" 33 12 34 13 echo 'hist:keys=common_pid' > events/ftrace/print/trigger 35 14 for i in `seq 1 10` ; do echo "hello" > trace_marker; done
+2 -21
tools/testing/selftests/ftrace/test.d/trigger/trigger-trace-marker-snapshot.tc
··· 1 1 #!/bin/sh 2 2 # SPDX-License-Identifier: GPL-2.0 3 3 # description: trace_marker trigger - test snapshot trigger 4 + # requires: set_event snapshot events/ftrace/print/trigger 4 5 # flags: instance 5 6 6 7 fail() { #msg 7 8 echo $1 8 9 exit_fail 9 10 } 10 - 11 - if [ ! -f set_event ]; then 12 - echo "event tracing is not supported" 13 - exit_unsupported 14 - fi 15 - 16 - if [ ! -f snapshot ]; then 17 - echo "snapshot is not supported" 18 - exit_unsupported 19 - fi 20 - 21 - if [ ! -d events/ftrace/print ]; then 22 - echo "event trace_marker is not supported" 23 - exit_unsupported 24 - fi 25 - 26 - if [ ! -f events/ftrace/print/trigger ]; then 27 - echo "event trigger is not supported" 28 - exit_unsupported 29 - fi 30 11 31 12 test_trace() { 32 13 file=$1 ··· 27 46 done 28 47 } 29 48 30 - echo "Test snapshot trace_marker tigger" 49 + echo "Test snapshot trace_marker trigger" 31 50 32 51 echo 'snapshot' > events/ftrace/print/trigger 33 52
+1 -30
tools/testing/selftests/ftrace/test.d/trigger/trigger-trace-marker-synthetic-kernel.tc
··· 1 1 #!/bin/sh 2 2 # SPDX-License-Identifier: GPL-2.0 3 3 # description: trace_marker trigger - test histogram with synthetic event against kernel event 4 + # requires: set_event synthetic_events events/sched/sched_waking events/ftrace/print/trigger events/ftrace/print/hist 4 5 # flags: 5 6 6 7 fail() { #msg 7 8 echo $1 8 9 exit_fail 9 10 } 10 - 11 - if [ ! -f set_event ]; then 12 - echo "event tracing is not supported" 13 - exit_unsupported 14 - fi 15 - 16 - if [ ! -f synthetic_events ]; then 17 - echo "synthetic events not supported" 18 - exit_unsupported 19 - fi 20 - 21 - if [ ! -d events/ftrace/print ]; then 22 - echo "event trace_marker is not supported" 23 - exit_unsupported 24 - fi 25 - 26 - if [ ! -d events/sched/sched_waking ]; then 27 - echo "event sched_waking is not supported" 28 - exit_unsupported 29 - fi 30 - 31 - if [ ! -f events/ftrace/print/trigger ]; then 32 - echo "event trigger is not supported" 33 - exit_unsupported 34 - fi 35 - 36 - if [ ! -f events/ftrace/print/hist ]; then 37 - echo "hist trigger is not supported" 38 - exit_unsupported 39 - fi 40 11 41 12 echo "Test histogram kernel event to trace_marker latency histogram trigger" 42 13
+1 -25
tools/testing/selftests/ftrace/test.d/trigger/trigger-trace-marker-synthetic.tc
··· 1 1 #!/bin/sh 2 2 # SPDX-License-Identifier: GPL-2.0 3 3 # description: trace_marker trigger - test histogram with synthetic event 4 + # requires: set_event synthetic_events events/ftrace/print/trigger events/ftrace/print/hist 4 5 # flags: 5 6 6 7 fail() { #msg 7 8 echo $1 8 9 exit_fail 9 10 } 10 - 11 - if [ ! -f set_event ]; then 12 - echo "event tracing is not supported" 13 - exit_unsupported 14 - fi 15 - 16 - if [ ! -f synthetic_events ]; then 17 - echo "synthetic events not supported" 18 - exit_unsupported 19 - fi 20 - 21 - if [ ! -d events/ftrace/print ]; then 22 - echo "event trace_marker is not supported" 23 - exit_unsupported 24 - fi 25 - 26 - if [ ! -f events/ftrace/print/trigger ]; then 27 - echo "event trigger is not supported" 28 - exit_unsupported 29 - fi 30 - 31 - if [ ! -f events/ftrace/print/hist ]; then 32 - echo "hist trigger is not supported" 33 - exit_unsupported 34 - fi 35 11 36 12 echo "Test histogram trace_marker to trace_marker latency histogram trigger" 37 13
+1 -10
tools/testing/selftests/ftrace/test.d/trigger/trigger-traceonoff.tc
··· 1 1 #!/bin/sh 2 2 # SPDX-License-Identifier: GPL-2.0 3 3 # description: event trigger - test traceon/off trigger 4 + # requires: set_event events/sched/sched_process_fork/trigger 4 5 5 6 fail() { #msg 6 7 echo $1 7 8 exit_fail 8 9 } 9 - 10 - if [ ! -f set_event -o ! -d events/sched ]; then 11 - echo "event tracing is not supported" 12 - exit_unsupported 13 - fi 14 - 15 - if [ ! -f events/sched/sched_process_fork/trigger ]; then 16 - echo "event trigger is not supported" 17 - exit_unsupported 18 - fi 19 10 20 11 echo "Test traceoff trigger" 21 12 echo 1 > tracing_on