mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-10-29 23:53:32 +00:00
selftests/ftrace: Update synthetic event syntax errors
Some of the synthetic event errors and positions have changed in the
code - update those and add several more tests.
Also add a runtime check to ensure that the kernel supports dynamic
strings in synthetic events, which these tests require.
Link: https://lkml.kernel.org/r/51402656433455baead34f068c6e9466b64df9c0.1612208610.git.zanussi@kernel.org
Fixes: 81ff92a93d
(selftests/ftrace: Add test case for synthetic event syntax errors)
Reported-by: Masami Hiramatsu <mhiramat@kernel.org>
Signed-off-by: Tom Zanussi <zanussi@kernel.org>
Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
This commit is contained in:
parent
8b5ab6bd0b
commit
b5734e997e
1 changed files with 27 additions and 8 deletions
|
@ -1,19 +1,38 @@
|
|||
#!/bin/sh
|
||||
# SPDX-License-Identifier: GPL-2.0
|
||||
# description: event trigger - test synthetic_events syntax parser errors
|
||||
# requires: synthetic_events error_log
|
||||
# requires: synthetic_events error_log "char name[]' >> synthetic_events":README
|
||||
|
||||
check_error() { # command-with-error-pos-by-^
|
||||
ftrace_errlog_check 'synthetic_events' "$1" 'synthetic_events'
|
||||
}
|
||||
|
||||
check_dyn_error() { # command-with-error-pos-by-^
|
||||
ftrace_errlog_check 'synthetic_events' "$1" 'dynamic_events'
|
||||
}
|
||||
|
||||
check_error 'myevent ^chr arg' # INVALID_TYPE
|
||||
check_error 'myevent ^char str[];; int v' # INVALID_TYPE
|
||||
check_error 'myevent char ^str]; int v' # INVALID_NAME
|
||||
check_error 'myevent char ^str;[]' # INVALID_NAME
|
||||
check_error 'myevent ^char str[; int v' # INVALID_TYPE
|
||||
check_error '^mye;vent char str[]' # BAD_NAME
|
||||
check_error 'myevent char str[]; ^int' # INVALID_FIELD
|
||||
check_error '^myevent' # INCOMPLETE_CMD
|
||||
check_error 'myevent ^unsigned arg' # INCOMPLETE_TYPE
|
||||
|
||||
check_error 'myevent char ^str]; int v' # BAD_NAME
|
||||
check_error '^mye-vent char str[]' # BAD_NAME
|
||||
check_error 'myevent char ^st-r[]' # BAD_NAME
|
||||
|
||||
check_error 'myevent char str;^[]' # INVALID_FIELD
|
||||
check_error 'myevent char str; ^int' # INVALID_FIELD
|
||||
|
||||
check_error 'myevent char ^str[; int v' # INVALID_ARRAY_SPEC
|
||||
check_error 'myevent char ^str[kdjdk]' # INVALID_ARRAY_SPEC
|
||||
check_error 'myevent char ^str[257]' # INVALID_ARRAY_SPEC
|
||||
|
||||
check_error '^mye;vent char str[]' # INVALID_CMD
|
||||
check_error '^myevent ; char str[]' # INVALID_CMD
|
||||
check_error '^myevent; char str[]' # INVALID_CMD
|
||||
check_error '^myevent ;char str[]' # INVALID_CMD
|
||||
check_error '^; char str[]' # INVALID_CMD
|
||||
check_error '^;myevent char str[]' # INVALID_CMD
|
||||
check_error '^myevent' # INVALID_CMD
|
||||
|
||||
check_dyn_error '^s:junk/myevent char str[' # INVALID_DYN_CMD
|
||||
|
||||
exit 0
|
||||
|
|
Loading…
Reference in a new issue