function run_workload()
{
local TEST_APP=$1
- local start_file_sync
- start_file_sync=$(mktemp -u)
+ # shift the first argument, passing along the other args if any to the
+ # test app.
+ shift
+ local start_file_sync=$(mktemp --tmpdir -u "tmp.${FUNCNAME[0]}_sync_before_first.XXXXXX")
lttng_untrack_all
- ./"$TEST_APP" "$start_file_sync" &
+ ./"$TEST_APP" "$start_file_sync" "$@" &
PID=$!
lttng_track_pid $PID
function test_user_callstack()
{
- TRACE_PATH=$(mktemp -d)
+ TRACE_PATH=$(mktemp --tmpdir -d "tmp.${FUNCNAME[0]}_trace_path.XXXXXX")
# This is the expected userspace callstack. (see gen-syscall-events-callstack.c)
USER_CS_EXPECTED="main fct_a fct_b fct_c my_gettid"
EVENT_NAME="gettid"
function test_kernel_callstack()
{
- TRACE_PATH=$(mktemp -d)
+ TRACE_PATH=$(mktemp --tmpdir -d "tmp.${FUNCNAME[0]}_trace_path.XXXXXX")
# Those are symbol expected to be present in the kernel callstack. This
# is not an exhaustive list since it's kernel dependent.
lttng_enable_kernel_syscall_ok "$SESSION_NAME" "$EVENT_NAME" "$CHANNEL_NAME"
add_context_kernel_ok "$SESSION_NAME" "$CHANNEL_NAME" "callstack-kernel"
- run_workload $TEST_APP_KERNELSPACE
+ run_workload "$TEST_APP_KERNELSPACE" "/proc/cpuinfo" "/proc/cmdline"
destroy_lttng_session_ok "$SESSION_NAME"