trigger-multihist.tc 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. #!/bin/sh
  2. # SPDX-License-Identifier: GPL-2.0
  3. # description: event trigger - test multiple histogram triggers
  4. # requires: set_event events/sched/sched_process_fork/trigger events/sched/sched_process_fork/hist
  5. # flags: instance
  6. fail() { #msg
  7. echo $1
  8. exit_fail
  9. }
  10. echo "Test histogram multiple triggers"
  11. echo 'hist:keys=parent_pid:vals=child_pid' > events/sched/sched_process_fork/trigger
  12. echo 'hist:keys=parent_comm:vals=child_pid' >> events/sched/sched_process_fork/trigger
  13. for i in `seq 1 10` ; do ( echo "forked" > /dev/null); done
  14. grep parent_pid events/sched/sched_process_fork/hist > /dev/null || \
  15. fail "hist trigger on sched_process_fork did not work"
  16. grep child events/sched/sched_process_fork/hist > /dev/null || \
  17. fail "hist trigger on sched_process_fork did not work"
  18. COMM=`cat /proc/$$/comm`
  19. grep "parent_comm: $COMM" events/sched/sched_process_fork/hist > /dev/null || \
  20. fail "string key on sched_process_fork did not work"
  21. reset_trigger
  22. echo "Test histogram with its name"
  23. echo 'hist:name=test_hist:keys=common_pid' > events/sched/sched_process_fork/trigger
  24. for i in `seq 1 10` ; do ( echo "forked" > /dev/null); done
  25. grep test_hist events/sched/sched_process_fork/hist > /dev/null || \
  26. fail "named event on sched_process_fork did not work"
  27. echo "Test same named histogram on different events"
  28. echo 'hist:name=test_hist:keys=common_pid' > events/sched/sched_process_exit/trigger
  29. for i in `seq 1 10` ; do ( echo "forked" > /dev/null); done
  30. grep test_hist events/sched/sched_process_exit/hist > /dev/null || \
  31. fail "named event on sched_process_fork did not work"
  32. diffs=`diff events/sched/sched_process_exit/hist events/sched/sched_process_fork/hist | wc -l`
  33. test $diffs -eq 0 || fail "Same name histograms are not same"
  34. exit 0