Test: add diag to each syscall test
[lttng-tools.git] / tests / regression / kernel / test_syscall
index 5e6b7467b284ac130b3f7358d2a604fc226a3e7f..e3b29e8197b59a248384b420997470aae2279d0b 100755 (executable)
@@ -20,7 +20,7 @@ TEST_DESC="Kernel tracer - System calls"
 
 CURDIR=$(dirname $0)/
 TESTDIR=$CURDIR/../..
-NUM_TESTS=124
+NUM_TESTS=132
 
 # test command issues at least open and close system calls
 TESTCMD="cat /proc/cpuinfo > /dev/null"
@@ -32,6 +32,8 @@ function test_syscall_single()
        TRACE_PATH=$(mktemp -d)
        SESSION_NAME="kernel_syscall_single"
 
+       diag "Syscall trace single"
+
        create_lttng_session $SESSION_NAME $TRACE_PATH
 
        lttng_enable_kernel_syscall_ok $SESSION_NAME "open"
@@ -41,11 +43,11 @@ function test_syscall_single()
        stop_lttng_tracing
 
        # ensure each is there.
-       validate_trace_exp "-e syscall_entry_open -e compat_syscall_entry_open" $TRACE_PATH
-       validate_trace_exp "-e syscall_exit_open -e compat_syscall_exit_open" $TRACE_PATH
+       validate_trace_exp "-e syscall_entry_open: -e compat_syscall_entry_open:" $TRACE_PATH
+       validate_trace_exp "-e syscall_exit_open: -e compat_syscall_exit_open:" $TRACE_PATH
 
        # ensure trace only contains those.
-       validate_trace_only_exp "-e syscall_entry_open -e compat_syscall_entry_open -e syscall_exit_open -e compat_syscall_exit_open" $TRACE_PATH
+       validate_trace_only_exp "-e syscall_entry_open: -e compat_syscall_entry_open: -e syscall_exit_open: -e compat_syscall_exit_open:" $TRACE_PATH
 
        destroy_lttng_session $SESSION_NAME
 
@@ -57,6 +59,8 @@ function test_syscall_two()
        TRACE_PATH=$(mktemp -d)
        SESSION_NAME="kernel_syscall_two"
 
+       diag "Syscall trace two events"
+
        create_lttng_session $SESSION_NAME $TRACE_PATH
 
        lttng_enable_kernel_syscall_ok $SESSION_NAME "open"
@@ -67,13 +71,13 @@ function test_syscall_two()
        stop_lttng_tracing
 
        # ensure each is there.
-       validate_trace_exp "-e syscall_entry_open -e compat_syscall_entry_open" $TRACE_PATH
-       validate_trace_exp "-e syscall_exit_open -e compat_syscall_exit_open" $TRACE_PATH
-       validate_trace_exp "-e syscall_entry_close -e compat_syscall_entry_close" $TRACE_PATH
-       validate_trace_exp "-e syscall_exit_close -e compat_syscall_exit_close" $TRACE_PATH
+       validate_trace_exp "-e syscall_entry_open: -e compat_syscall_entry_open:" $TRACE_PATH
+       validate_trace_exp "-e syscall_exit_open: -e compat_syscall_exit_open:" $TRACE_PATH
+       validate_trace_exp "-e syscall_entry_close: -e compat_syscall_entry_close:" $TRACE_PATH
+       validate_trace_exp "-e syscall_exit_close: -e compat_syscall_exit_close:" $TRACE_PATH
 
        # ensure trace only contains those.
-       validate_trace_only_exp "-e syscall_entry_open -e compat_syscall_entry_open -e syscall_exit_open -e compat_syscall_exit_open -e syscall_entry_close -e compat_syscall_entry_close -e syscall_exit_close -e compat_syscall_exit_close" $TRACE_PATH
+       validate_trace_only_exp "-e syscall_entry_open: -e compat_syscall_entry_open: -e syscall_exit_open: -e compat_syscall_exit_open: -e syscall_entry_close: -e compat_syscall_entry_close: -e syscall_exit_close: -e compat_syscall_exit_close:" $TRACE_PATH
 
        destroy_lttng_session $SESSION_NAME
 
@@ -85,6 +89,8 @@ function test_syscall_all()
        TRACE_PATH=$(mktemp -d)
        SESSION_NAME="kernel_syscall_all"
 
+       diag "Syscall trace all events"
+
        create_lttng_session $SESSION_NAME $TRACE_PATH
 
        # enable all syscalls
@@ -95,10 +101,10 @@ function test_syscall_all()
        stop_lttng_tracing
 
        # ensure at least open and close are there.
-       validate_trace_exp "-e syscall_entry_open -e compat_syscall_entry_open" $TRACE_PATH
-       validate_trace_exp "-e syscall_exit_open -e compat_syscall_exit_open" $TRACE_PATH
-       validate_trace_exp "-e syscall_entry_close -e compat_syscall_entry_close" $TRACE_PATH
-       validate_trace_exp "-e syscall_exit_close -e compat_syscall_exit_close" $TRACE_PATH
+       validate_trace_exp "-e syscall_entry_open: -e compat_syscall_entry_open:" $TRACE_PATH
+       validate_trace_exp "-e syscall_exit_open: -e compat_syscall_exit_open:" $TRACE_PATH
+       validate_trace_exp "-e syscall_entry_close: -e compat_syscall_entry_close:" $TRACE_PATH
+       validate_trace_exp "-e syscall_exit_close: -e compat_syscall_exit_close:" $TRACE_PATH
        # trace may contain other syscalls.
 
        destroy_lttng_session $SESSION_NAME
@@ -111,6 +117,8 @@ function test_syscall_all_disable_one()
        TRACE_PATH=$(mktemp -d)
        SESSION_NAME="kernel_syscall_all_disable_one"
 
+       diag "Syscall trace all events and disable one"
+
        create_lttng_session $SESSION_NAME $TRACE_PATH
 
        # enable all syscalls
@@ -123,11 +131,11 @@ function test_syscall_all_disable_one()
        stop_lttng_tracing
 
        # ensure "open" syscall is not there.
-       validate_trace_only_exp "-v -e syscall_entry_open -e compat_syscall_entry_open -e syscall_exit_open -e compat_syscall_exit_open" $TRACE_PATH
+       validate_trace_only_exp "-v -e syscall_entry_open: -e compat_syscall_entry_open: -e syscall_exit_open: -e compat_syscall_exit_open:" $TRACE_PATH
 
        # ensure "close" syscall is there.
-       validate_trace_exp "-e syscall_entry_close -e compat_syscall_entry_close" $TRACE_PATH
-       validate_trace_exp "-e syscall_exit_close -e compat_syscall_exit_close" $TRACE_PATH
+       validate_trace_exp "-e syscall_entry_close: -e compat_syscall_entry_close:" $TRACE_PATH
+       validate_trace_exp "-e syscall_exit_close: -e compat_syscall_exit_close:" $TRACE_PATH
 
        destroy_lttng_session $SESSION_NAME
 
@@ -139,6 +147,8 @@ function test_syscall_all_disable_two()
        TRACE_PATH=$(mktemp -d)
        SESSION_NAME="kernel_syscall_all_disable_two"
 
+       diag "Syscall trace all events and disable two"
+
        create_lttng_session $SESSION_NAME $TRACE_PATH
 
        # enable all syscalls
@@ -153,11 +163,11 @@ function test_syscall_all_disable_two()
        stop_lttng_tracing
 
        # ensure "open" and "close" syscalls are not there.
-       validate_trace_only_exp "-v -e syscall_entry_open -e compat_syscall_entry_open -e syscall_exit_open -e compat_syscall_exit_open -e syscall_entry_close -e compat_syscall_entry_close -e syscall_exit_close -e compat_syscall_exit_close" $TRACE_PATH
+       validate_trace_only_exp "-v -e syscall_entry_open: -e compat_syscall_entry_open: -e syscall_exit_open: -e compat_syscall_exit_open: -e syscall_entry_close: -e compat_syscall_entry_close: -e syscall_exit_close: -e compat_syscall_exit_close:" $TRACE_PATH
 
        # ensure "execve" syscall is there.
-       validate_trace_exp "-e syscall_entry_execve -e compat_syscall_entry_execve" $TRACE_PATH
-       validate_trace_exp "-e syscall_exit_execve -e compat_syscall_exit_execve" $TRACE_PATH
+       validate_trace_exp "-e syscall_entry_execve: -e compat_syscall_entry_execve:" $TRACE_PATH
+       validate_trace_exp "-e syscall_exit_execve: -e compat_syscall_exit_execve:" $TRACE_PATH
 
        destroy_lttng_session $SESSION_NAME
 
@@ -169,6 +179,8 @@ function test_syscall_enable_all_disable_all()
        TRACE_PATH=$(mktemp -d)
        SESSION_NAME="kernel_syscall_enable_all_disable_all"
 
+       diag "Syscall trace all events and disable all"
+
        create_lttng_session $SESSION_NAME $TRACE_PATH
 
        # enable all system calls
@@ -194,6 +206,8 @@ function test_syscall_enable_all_disable_all_enable_all()
        TRACE_PATH=$(mktemp -d)
        SESSION_NAME="kernel_syscall_enable_all_disable_all_enable_all"
 
+       diag "Syscall trace all events and enable/disable all"
+
        create_lttng_session $SESSION_NAME $TRACE_PATH
 
        # enable all system calls
@@ -209,10 +223,10 @@ function test_syscall_enable_all_disable_all_enable_all()
        stop_lttng_tracing
 
        # ensure at least open and close are there.
-       validate_trace_exp "-e syscall_entry_open -e compat_syscall_entry_open" $TRACE_PATH
-       validate_trace_exp "-e syscall_exit_open -e compat_syscall_exit_open" $TRACE_PATH
-       validate_trace_exp "-e syscall_entry_close -e compat_syscall_entry_close" $TRACE_PATH
-       validate_trace_exp "-e syscall_exit_close -e compat_syscall_exit_close" $TRACE_PATH
+       validate_trace_exp "-e syscall_entry_open: -e compat_syscall_entry_open:" $TRACE_PATH
+       validate_trace_exp "-e syscall_exit_open: -e compat_syscall_exit_open:" $TRACE_PATH
+       validate_trace_exp "-e syscall_entry_close: -e compat_syscall_entry_close:" $TRACE_PATH
+       validate_trace_exp "-e syscall_exit_close: -e compat_syscall_exit_close:" $TRACE_PATH
        # trace may contain other syscalls.
 
        destroy_lttng_session $SESSION_NAME
@@ -225,6 +239,8 @@ function test_syscall_enable_all_disable_all_twice()
        TRACE_PATH=$(mktemp -d)
        SESSION_NAME="kernel_syscall_enable_all_disable_all_twice"
 
+       diag "Syscall trace all events and enable/disable all twice"
+
        create_lttng_session $SESSION_NAME $TRACE_PATH
 
        # enable all system calls
@@ -254,6 +270,8 @@ function test_syscall_enable_one_disable_one()
        TRACE_PATH=$(mktemp -d)
        SESSION_NAME="kernel_syscall_enable_one_disable_one"
 
+       diag "Syscall trace one event and disable one"
+
        create_lttng_session $SESSION_NAME $TRACE_PATH
 
        # enable open system call
@@ -279,6 +297,8 @@ function test_syscall_enable_two_disable_two()
        TRACE_PATH=$(mktemp -d)
        SESSION_NAME="kernel_syscall_enable_two_disable_two"
 
+       diag "Syscall trace two events and disable two"
+
        create_lttng_session $SESSION_NAME $TRACE_PATH
 
        # enable open and close system calls
@@ -306,6 +326,8 @@ function test_syscall_enable_two_disable_one()
        TRACE_PATH=$(mktemp -d)
        SESSION_NAME="kernel_syscall_enable_two_disable_one"
 
+       diag "Syscall trace two events and disable one"
+
        create_lttng_session $SESSION_NAME $TRACE_PATH
 
        # enable open and close system calls
@@ -320,11 +342,11 @@ function test_syscall_enable_two_disable_one()
        stop_lttng_tracing
 
        # ensure open is there.
-       validate_trace_exp "-e syscall_entry_open -e compat_syscall_entry_open" $TRACE_PATH
-       validate_trace_exp "-e syscall_exit_open -e compat_syscall_exit_open" $TRACE_PATH
+       validate_trace_exp "-e syscall_entry_open: -e compat_syscall_entry_open:" $TRACE_PATH
+       validate_trace_exp "-e syscall_exit_open: -e compat_syscall_exit_open:" $TRACE_PATH
 
        # ensure trace only contains those.
-       validate_trace_only_exp "-e syscall_entry_open -e compat_syscall_entry_open -e syscall_exit_open -e compat_syscall_exit_open" $TRACE_PATH
+       validate_trace_only_exp "-e syscall_entry_open: -e compat_syscall_entry_open: -e syscall_exit_open: -e compat_syscall_exit_open:" $TRACE_PATH
 
        destroy_lttng_session $SESSION_NAME
 
@@ -336,6 +358,8 @@ function test_syscall_disable_twice()
        TRACE_PATH=$(mktemp -d)
        SESSION_NAME="kernel_syscall_disable_twice"
 
+       diag "Syscall trace one event and disable twice"
+
        create_lttng_session $SESSION_NAME $TRACE_PATH
 
        lttng_enable_kernel_syscall_ok $SESSION_NAME "open"
@@ -354,6 +378,8 @@ function test_syscall_disable_all_twice()
        TRACE_PATH=$(mktemp -d)
        SESSION_NAME="kernel_syscall_disable_all_twice"
 
+       diag "Syscall trace all events and disable all twice"
+
        create_lttng_session $SESSION_NAME $TRACE_PATH
 
        lttng_enable_kernel_syscall_ok $SESSION_NAME
@@ -373,6 +399,8 @@ function test_syscall_enable_unknown()
        TRACE_PATH=$(mktemp -d)
        SESSION_NAME="kernel_syscall_enable_unknown"
 
+       diag "Syscall enable an unknown event"
+
        create_lttng_session $SESSION_NAME $TRACE_PATH
 
        lttng_enable_kernel_syscall_fail $SESSION_NAME "thissyscallcannotexist"
@@ -387,6 +415,8 @@ function test_syscall_enable_all_enable_one()
        TRACE_PATH=$(mktemp -d)
        SESSION_NAME="kernel_syscall_enable_all_enable_one"
 
+       diag "Syscall enable all and enable one"
+
        create_lttng_session $SESSION_NAME $TRACE_PATH
 
        lttng_enable_kernel_syscall_ok $SESSION_NAME
@@ -403,6 +433,8 @@ function test_syscall_disable_all_disable_one()
        TRACE_PATH=$(mktemp -d)
        SESSION_NAME="kernel_syscall_enable_all_enable_one"
 
+       diag "Syscall disable all and disable one"
+
        create_lttng_session $SESSION_NAME $TRACE_PATH
 
        lttng_enable_kernel_syscall_ok $SESSION_NAME
@@ -415,6 +447,42 @@ function test_syscall_disable_all_disable_one()
        rm -rf $TRACE_PATH
 }
 
+function test_syscall_enable_channel_disable_all()
+{
+       TRACE_PATH=$(mktemp -d)
+       SESSION_NAME="kernel_syscall_enable_channel_disable_all"
+       CHANNEL_NAME="channel"
+
+       diag "Syscall enable channel and disable all"
+
+       create_lttng_session $SESSION_NAME $TRACE_PATH
+
+       lttng_enable_kernel_channel_ok $SESSION_NAME $CHANNEL_NAME
+       lttng_disable_kernel_syscall_fail $SESSION_NAME "-a" $CHANNEL_NAME
+
+       destroy_lttng_session $SESSION_NAME
+
+       rm -rf $TRACE_PATH
+}
+
+function test_syscall_enable_channel_disable_one()
+{
+       TRACE_PATH=$(mktemp -d)
+       SESSION_NAME="kernel_syscall_enable_channel_disable_all"
+       CHANNEL_NAME="channel"
+
+       diag "Syscall enable channel and disable one"
+
+       create_lttng_session $SESSION_NAME $TRACE_PATH
+
+       lttng_enable_kernel_channel_ok $SESSION_NAME $CHANNEL_NAME
+       lttng_disable_kernel_syscall_fail $SESSION_NAME "open" $CHANNEL_NAME
+
+       destroy_lttng_session $SESSION_NAME
+
+       rm -rf $TRACE_PATH
+}
+
 # MUST set TESTDIR before calling those functions
 plan_tests $NUM_TESTS
 
@@ -446,6 +514,8 @@ skip $isroot "Root access is needed. Skipping all tests." $NUM_TESTS ||
        test_syscall_enable_unknown
        test_syscall_enable_all_enable_one
        test_syscall_disable_all_disable_one
+       test_syscall_enable_channel_disable_all
+       test_syscall_enable_channel_disable_one
 
        stop_lttng_sessiond
 }
This page took 0.030763 seconds and 5 git commands to generate.