X-Git-Url: http://git.liburcu.org/?a=blobdiff_plain;f=tests%2Fregression%2Ftools%2Ftracefile-limits%2Ftest_tracefile_count;h=37d15905acbbe148b6e0f1e25c307f0b44d05df1;hb=4e4e511415375c14912856d0fd6aa3be89d96edc;hp=eb5d1a5f13c146aa78771414112d139f2c141bc9;hpb=f4616c0a5a5b95029bd48a8b78e5b4c484b3a548;p=lttng-tools.git diff --git a/tests/regression/tools/tracefile-limits/test_tracefile_count b/tests/regression/tools/tracefile-limits/test_tracefile_count index eb5d1a5f1..37d15905a 100755 --- a/tests/regression/tools/tracefile-limits/test_tracefile_count +++ b/tests/regression/tools/tracefile-limits/test_tracefile_count @@ -17,16 +17,37 @@ TESTAPP_BIN="$TESTAPP_PATH/$TESTAPP_NAME/$TESTAPP_NAME" STATS_BIN="$TESTDIR/utils/babelstats.pl" NUM_TESTS=74 -NUM_CPUS=$(nproc) PAGE_SIZE=$(getconf PAGE_SIZE) TRACEFILE_SIZE=$PAGE_SIZE source "$TESTDIR"/utils/utils.sh +NUM_CPUS=$(conf_proc_count) + if [ ! -x "$TESTAPP_BIN" ]; then BAIL_OUT "No UST events binary detected." fi +function pick_random_cpuid () +{ + local cpuid=0 + + # On Linux pick a random available cpuid from sysfs + if [ -d "/sys/devices/system/cpu" ]; then + local cpuids=() + + for i in /sys/devices/system/cpu/cpu[0-9]*; do + cpuids+=("${i#/sys/devices/system/cpu/cpu}") + done + + cpuid=${cpuids[ $RANDOM % ${#cpuids[@]} ]} + else + cpuid=$((RANDOM % NUM_CPUS)) + fi + + echo $cpuid +} + function enable_lttng_channel_count_limit () { sess_name="$1" @@ -82,7 +103,7 @@ function test_tracefile_count_limit () local count_limit="$1" local channel_name="channel" - local cpuno=$((RANDOM % NUM_CPUS)) + local cpuno=$(pick_random_cpuid) local event_name="tp:tptest" local expected_size=$((count_limit * TRACEFILE_SIZE)) local num_iter=100000