37 lines
1.3 KiB
Diff
37 lines
1.3 KiB
Diff
From 3e5eb20e114e1bec6a762488a5a3b7aa9632e634 Mon Sep 17 00:00:00 2001
|
|
From: "Masami Hiramatsu (Google)" <mhiramat@kernel.org>
|
|
Date: Sat, 16 Aug 2025 23:10:51 +0900
|
|
Subject: tracing: fprobe-event: Sanitize wildcard for fprobe event name
|
|
|
|
Fprobe event accepts wildcards for the target functions, but unless user
|
|
specifies its event name, it makes an event with the wildcards.
|
|
|
|
/sys/kernel/tracing # echo 'f mutex*' >> dynamic_events
|
|
/sys/kernel/tracing # cat dynamic_events
|
|
f:fprobes/mutex*__entry mutex*
|
|
/sys/kernel/tracing # ls events/fprobes/
|
|
enable filter mutex*__entry
|
|
|
|
To fix this, replace the wildcard ('*') with an underscore.
|
|
|
|
Link: https://lore.kernel.org/all/175535345114.282990.12294108192847938710.stgit@devnote2/
|
|
|
|
Fixes: 334e5519c375 ("tracing/probes: Add fprobe events for tracing function entry and exit.")
|
|
Signed-off-by: Masami Hiramatsu (Google) <mhiramat@kernel.org>
|
|
Cc: stable@vger.kernel.org
|
|
---
|
|
kernel/trace/trace.h | 2 +-
|
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
|
|
--- a/kernel/trace/trace.h
|
|
+++ b/kernel/trace/trace.h
|
|
@@ -2210,7 +2210,7 @@ static inline bool is_good_system_name(c
|
|
static inline void sanitize_event_name(char *name)
|
|
{
|
|
while (*name++ != '\0')
|
|
- if (*name == ':' || *name == '.')
|
|
+ if (*name == ':' || *name == '.' || *name == '*')
|
|
*name = '_';
|
|
}
|
|
|