FILE
rv_monitor_reactor.tc
File preview with syntax highlighting.
linux-6.19.14/tools/testing/selftests/verification/test.d/rv_monitor_reactor.tc
1#!/bin/sh 2# SPDX-License-Identifier: GPL-2.0-or-later 3# description: Test monitor reactor setting 4# requires: available_reactors 5 6test_monitor_reactor() { 7 local monitor="$1" 8 local prefix="$2" # nested monitors 9 10 while read -r reactor; do 11 [ "$reactor" = nop ] && continue 12 13 echo "$reactor" > "monitors/$prefix$monitor/reactors" 14 grep -q "\\[$reactor\\]" "monitors/$prefix$monitor/reactors" 15 done < available_reactors 16 17 echo nop > "monitors/$prefix$monitor/reactors" 18 grep -q "\\[nop\\]" "monitors/$prefix$monitor/reactors" 19} 20 21test_container_monitor() { 22 local monitor="$1" 23 local nested 24 25 while read -r reactor; do 26 [ "$reactor" = nop ] && continue 27 28 echo "$reactor" > "monitors/$monitor/reactors" 29 grep -q "\\[$reactor\\]" "monitors/$monitor/reactors" 30 31 for nested_dir in "monitors/$monitor"/*; do 32 [ -d "$nested_dir" ] || continue 33 nested=$(basename "$nested_dir") 34 grep -q "\\[$reactor\\]" "monitors/$monitor/$nested/reactors" 35 done 36 done < available_reactors 37 test -n "$nested" 38 39 echo nop > "monitors/$monitor/reactors" 40 grep -q "\\[nop\\]" "monitors/$monitor/reactors" 41 42 for nested_dir in "monitors/$monitor"/*; do 43 [ -d "$nested_dir" ] || continue 44 nested=$(basename "$nested_dir") 45 grep -q "\\[nop\\]" "monitors/$monitor/$nested/reactors" 46 done 47 48 for nested_dir in "monitors/$monitor"/*; do 49 [ -d "$nested_dir" ] || continue 50 nested=$(basename "$nested_dir") 51 test_monitor_reactor "$nested" "$monitor/" 52 done 53} 54 55for monitor_dir in monitors/*; do 56 monitor=$(basename "$monitor_dir") 57 58 if find "$monitor_dir" -mindepth 1 -type d | grep -q .; then 59 test_container_monitor "$monitor" 60 else 61 test_monitor_reactor "$monitor" 62 fi 63done 64 65monitor=$(ls /sys/kernel/tracing/rv/monitors -1 | head -n 1) 66test -f "monitors/$monitor/reactors" 67! echo non_existent_reactor > "monitors/$monitor/reactors" 68! grep -q "\\[non_existent_reactor\\]" "monitors/$monitor/reactors"
~/
Read-only file preview.