1*171ec346SSteven Rostedt (VMware)#!/bin/sh 2*171ec346SSteven Rostedt (VMware) 3*171ec346SSteven Rostedt (VMware)cd /sys/kernel/tracing 4*171ec346SSteven Rostedt (VMware) 5*171ec346SSteven Rostedt (VMware)compare_file() { 6*171ec346SSteven Rostedt (VMware) file="$1" 7*171ec346SSteven Rostedt (VMware) val="$2" 8*171ec346SSteven Rostedt (VMware) content=`cat $file` 9*171ec346SSteven Rostedt (VMware) if [ "$content" != "$val" ]; then 10*171ec346SSteven Rostedt (VMware) echo "FAILED: $file has '$content', expected '$val'" 11*171ec346SSteven Rostedt (VMware) exit 1 12*171ec346SSteven Rostedt (VMware) fi 13*171ec346SSteven Rostedt (VMware)} 14*171ec346SSteven Rostedt (VMware) 15*171ec346SSteven Rostedt (VMware)compare_file_partial() { 16*171ec346SSteven Rostedt (VMware) file="$1" 17*171ec346SSteven Rostedt (VMware) val="$2" 18*171ec346SSteven Rostedt (VMware) content=`cat $file | sed -ne "/^$val/p"` 19*171ec346SSteven Rostedt (VMware) if [ -z "$content" ]; then 20*171ec346SSteven Rostedt (VMware) echo "FAILED: $file does not contain '$val'" 21*171ec346SSteven Rostedt (VMware) cat $file 22*171ec346SSteven Rostedt (VMware) exit 1 23*171ec346SSteven Rostedt (VMware) fi 24*171ec346SSteven Rostedt (VMware)} 25*171ec346SSteven Rostedt (VMware) 26*171ec346SSteven Rostedt (VMware)file_contains() { 27*171ec346SSteven Rostedt (VMware) file=$1 28*171ec346SSteven Rostedt (VMware) val="$2" 29*171ec346SSteven Rostedt (VMware) 30*171ec346SSteven Rostedt (VMware) if ! grep -q "$val" $file ; then 31*171ec346SSteven Rostedt (VMware) echo "FAILED: $file does not contain $val" 32*171ec346SSteven Rostedt (VMware) cat $file 33*171ec346SSteven Rostedt (VMware) exit 1 34*171ec346SSteven Rostedt (VMware) fi 35*171ec346SSteven Rostedt (VMware)} 36*171ec346SSteven Rostedt (VMware) 37*171ec346SSteven Rostedt (VMware)compare_mask() { 38*171ec346SSteven Rostedt (VMware) file=$1 39*171ec346SSteven Rostedt (VMware) val="$2" 40*171ec346SSteven Rostedt (VMware) 41*171ec346SSteven Rostedt (VMware) content=`cat $file | sed -ne "/^[0 ]*$val/p"` 42*171ec346SSteven Rostedt (VMware) if [ -z "$content" ]; then 43*171ec346SSteven Rostedt (VMware) echo "FAILED: $file does not have mask '$val'" 44*171ec346SSteven Rostedt (VMware) cat $file 45*171ec346SSteven Rostedt (VMware) exit 1 46*171ec346SSteven Rostedt (VMware) fi 47*171ec346SSteven Rostedt (VMware)} 48*171ec346SSteven Rostedt (VMware) 49*171ec346SSteven Rostedt (VMware) 50*171ec346SSteven Rostedt (VMware)compare_file "tracing_on" "0" 51*171ec346SSteven Rostedt (VMware)compare_file "current_tracer" "function_graph" 52*171ec346SSteven Rostedt (VMware) 53*171ec346SSteven Rostedt (VMware)compare_file_partial "events/kprobes/start_event/enable" "1" 54*171ec346SSteven Rostedt (VMware)compare_file_partial "events/kprobes/start_event/trigger" "traceon" 55*171ec346SSteven Rostedt (VMware)file_contains "kprobe_events" 'start_event.*pci_proc_init' 56*171ec346SSteven Rostedt (VMware) 57*171ec346SSteven Rostedt (VMware)compare_file_partial "events/kprobes/end_event/enable" "1" 58*171ec346SSteven Rostedt (VMware)compare_file_partial "events/kprobes/end_event/trigger" "traceoff" 59*171ec346SSteven Rostedt (VMware)file_contains "kprobe_events" '^r.*end_event.*pci_proc_init' 60*171ec346SSteven Rostedt (VMware) 61*171ec346SSteven Rostedt (VMware)exit 0 62