X-Git-Url: https://git.lttng.org/?a=blobdiff_plain;f=tests%2Fperf%2Ftest_perf_raw.in;h=0a451ce63500d97a0bd938e3f860973b4fd399ba;hb=29784e2373ff4d82370f584f4e4e9722cda172a8;hp=7ed6d33b9f73b410be6c24c91cf667de6217e02e;hpb=9d16b343fb9e781fc8d8fa3c448a3f382306dd33;p=lttng-tools.git diff --git a/tests/perf/test_perf_raw.in b/tests/perf/test_perf_raw.in index 7ed6d33b9..0a451ce63 100644 --- a/tests/perf/test_perf_raw.in +++ b/tests/perf/test_perf_raw.in @@ -40,14 +40,31 @@ function have_libpfm() function test_ust_raw() { - TRACE_PATH=$(mktemp -d) - SESSION_NAME="ust_perf" - CHAN_NAME="mychan" - EVENT_NAME="tp:tptest" - PMU="UNHALTED_REFERENCE_CYCLES" - PERFID=$($CURDIR/find_event $PMU) - test $? -eq "0" - ok $? "Find PMU $PMU" + local SESSION_NAME="ust_perf" + local CHAN_NAME="mychan" + local EVENT_NAME="tp:tptest" + local PMU="UNHALTED_REFERENCE_CYCLES" + local tests_to_skip=9 + local ret + local TRACE_PATH + + # Find the raw perf id of the event. + PERFID=$("$CURDIR/find_event" "$PMU") + ret=$? + if [ "$ret" -eq "0" ]; then + pass "Find PMU $PMU" + elif [ "$ret" -eq "1" ]; then + skip 0 "PMU event not found." $tests_to_skip + return + elif [ "$ret" -eq "2" ]; then + skip 0 "PMU event not actionable." $tests_to_skip + return + else + fail "find_event returned $ret." + return + fi + + TRACE_PATH=$(mktemp -d -t "tmp.${FUNCNAME[0]}_trace_path.XXXXXX") create_lttng_session_ok $SESSION_NAME $TRACE_PATH @@ -72,14 +89,32 @@ function test_ust_raw() function test_kernel_raw() { - TRACE_PATH=$(mktemp -d) - SESSION_NAME="kernel_perf" - CHAN_NAME="mychan" - EVENT_NAME="lttng_test_filter_event" - PMU="UNHALTED_REFERENCE_CYCLES" - PERFID=$($CURDIR/find_event $PMU) - test $? -eq "0" - ok $? "Find PMU $PMU" + local SESSION_NAME="kernel_perf" + local CHAN_NAME="mychan" + local EVENT_NAME="lttng_test_filter_event" + local PMU="UNHALTED_REFERENCE_CYCLES" + local PERFID="" + local tests_to_skip=9 + local ret + local TRACE_PATH + + # Find the raw perf id of the event. + PERFID=$("$CURDIR/find_event" "$PMU") + ret=$? + if [ "$ret" -eq "0" ]; then + pass "Find PMU $PMU" + elif [ "$ret" -eq "1" ]; then + skip 0 "PMU event not found." $tests_to_skip + return + elif [ "$ret" -eq "2" ]; then + skip 0 "PMU event not actionable." $tests_to_skip + return + else + fail "find_event returned $ret." + return + fi + + TRACE_PATH=$(mktemp -d -t "tmp.${FUNCNAME[0]}_trace_path.XXXXXX") create_lttng_session_ok $SESSION_NAME $TRACE_PATH @@ -123,7 +158,7 @@ skip $isroot "Root access is needed for kernel testing, skipping." 9 || { modprobe lttng-test test_kernel_raw - rmmod lttng-test + modprobe --remove lttng-test } stop_lttng_sessiond