port: add support for BSD mktemp
[lttng-tools.git] / tests / regression / tools / tracefile-limits / test_tracefile_count
index 5ca10ac231bc6e407a94983f4a56e7162d473200..7f6032d7136afc8dd166ffee7769a03af9b28384 100755 (executable)
@@ -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
@@ -90,7 +111,7 @@ function test_tracefile_count_limit ()
        local session_name
        local stream_pattern=".*${channel_name}_${cpuno}_[0-9]*"
        local stream_size=0
-       local trace_path=$(mktemp --tmpdir -d "tmp.${FUNCNAME[0]}_trace_path.XXXXXX")
+       local trace_path=$(mktemp -d -t "tmp.${FUNCNAME[0]}_trace_path.XXXXXX")
 
        session_name=$(randstring 16 0)
 
This page took 0.024889 seconds and 4 git commands to generate.