summaryrefslogtreecommitdiffstats
path: root/kernel/trace/trace_events_user.c
diff options
context:
space:
mode:
authorsunliming <sunliming@kylinos.cn>2023-05-29 08:51:10 +0200
committerSteven Rostedt (Google) <rostedt@goodmis.org>2023-06-14 18:41:52 +0200
commitcfac4ed7279d056df6167bd665e460787dc9e0c4 (patch)
tree964993a76059a21dde956cf25280732d8e35d002 /kernel/trace/trace_events_user.c
parenttracing/user_events: Prevent same name but different args event (diff)
downloadlinux-cfac4ed7279d056df6167bd665e460787dc9e0c4.tar.xz
linux-cfac4ed7279d056df6167bd665e460787dc9e0c4.zip
tracing/user_events: Handle matching arguments that is null from dyn_events
When A registering user event from dyn_events has no argments, it will pass the matching check, regardless of whether there is a user event with the same name and arguments. Add the matching check when the arguments of registering user event is null. Link: https://lore.kernel.org/linux-trace-kernel/20230529065110.303440-1-sunliming@kylinos.cn Signed-off-by: sunliming <sunliming@kylinos.cn> Acked-by: Masami Hiramatsu (Google) <mhiramat@kernel.org> Signed-off-by: Steven Rostedt (Google) <rostedt@goodmis.org>
Diffstat (limited to 'kernel/trace/trace_events_user.c')
-rw-r--r--kernel/trace/trace_events_user.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/kernel/trace/trace_events_user.c b/kernel/trace/trace_events_user.c
index 37a38496a6be..afe61dc86543 100644
--- a/kernel/trace/trace_events_user.c
+++ b/kernel/trace/trace_events_user.c
@@ -1745,6 +1745,8 @@ static bool user_event_match(const char *system, const char *event,
if (match && argc > 0)
match = user_fields_match(user, argc, argv);
+ else if (match && argc == 0)
+ match = list_empty(&user->fields);
return match;
}