Kprobe and uprobe events can add a "system" to the events that are created via the kprobe_events and uprobe_events files respectively. If they do not include a "system" in the name, then the default "kprobes" or "uprobes" is used. The current notation to specify a system for one of these probe events is to add a '/' delimiter in the name, where the content before the '/' will be the system to use, and the content after will be the event name. echo 'p:my_system/my_event' > kprobe_events But this is inconsistent with the way histogram triggers separate their system / event names. The histogram triggers use a '.' delimiter, which can be confusing. To allow this to be more consistent, as well as keep backward compatibility, allow the kprobe and uprobe events to denote a system name with either a '/' or a '.'. That is: echo 'p:my_system/my_event' > kprobe_events is equivalent to: echo 'p:my_system.my_event' > kprobe_events Link: https://lore.kernel.org/linux-trace-devel/20210813004448.51c7de69ce432d338f4d226b@kernel.org/ Link: https://lkml.kernel.org/r/20210817035027.580493202@goodmis.org
Showing the changes to kernel (1 of 1 file). Show all
Unified · Split
| @@ -233,6 +233,9 @@ int traceprobe_parse_event_name(const char **pevent, const char **pgroup, · 232 unmodified lines | ||
| 233 | 233 | int len; |
| 234 | 234 | |
| 235 | 235 | slash = strchr(event, '/'); |
| 236 | + if (!slash) | |
| 237 | + slash = strchr(event, '.'); | |
| 238 | + | |
| 236 | 239 | if (slash) { |
| 237 | 240 | if (slash == event) { |
| 238 | 241 | trace_probe_log_err(offset, NO_GROUP_NAME); |