Messages in this thread | | | Date | Sat, 10 Oct 2020 23:39:00 +0900 | From | Masami Hiramatsu <> | Subject | Re: [PATCH 2/5] tracing: Move is_good_name() from trace_probe.h to trace.h |
| |
On Fri, 9 Oct 2020 10:17:08 -0500 Tom Zanussi <zanussi@kernel.org> wrote:
> is_good_name() is useful for other trace infrastructure, such as > synthetic events, so make it available via trace.h. >
This looks good to me.
Acked-by: Masami Hiramatsu <mhiramat@kernel.org>
Thanks!
> Signed-off-by: Tom Zanussi <zanussi@kernel.org> > --- > kernel/trace/trace.h | 13 +++++++++++++ > kernel/trace/trace_probe.h | 13 ------------- > 2 files changed, 13 insertions(+), 13 deletions(-) > > diff --git a/kernel/trace/trace.h b/kernel/trace/trace.h > index 5b0e797cacdd..a94852838491 100644 > --- a/kernel/trace/trace.h > +++ b/kernel/trace/trace.h > @@ -19,6 +19,7 @@ > #include <linux/glob.h> > #include <linux/irq_work.h> > #include <linux/workqueue.h> > +#include <linux/ctype.h> > > #ifdef CONFIG_FTRACE_SYSCALLS > #include <asm/unistd.h> /* For NR_SYSCALLS */ > @@ -2090,4 +2091,16 @@ static __always_inline void trace_iterator_reset(struct trace_iterator *iter) > iter->pos = -1; > } > > +/* Check the name is good for event/group/fields */ > +static inline bool is_good_name(const char *name) > +{ > + if (!isalpha(*name) && *name != '_') > + return false; > + while (*++name != '\0') { > + if (!isalpha(*name) && !isdigit(*name) && *name != '_') > + return false; > + } > + return true; > +} > + > #endif /* _LINUX_KERNEL_TRACE_H */ > diff --git a/kernel/trace/trace_probe.h b/kernel/trace/trace_probe.h > index 04d00987da69..2f703a20c724 100644 > --- a/kernel/trace/trace_probe.h > +++ b/kernel/trace/trace_probe.h > @@ -16,7 +16,6 @@ > #include <linux/tracefs.h> > #include <linux/types.h> > #include <linux/string.h> > -#include <linux/ctype.h> > #include <linux/ptrace.h> > #include <linux/perf_event.h> > #include <linux/kprobes.h> > @@ -348,18 +347,6 @@ bool trace_probe_match_command_args(struct trace_probe *tp, > #define trace_probe_for_each_link_rcu(pos, tp) \ > list_for_each_entry_rcu(pos, &(tp)->event->files, list) > > -/* Check the name is good for event/group/fields */ > -static inline bool is_good_name(const char *name) > -{ > - if (!isalpha(*name) && *name != '_') > - return false; > - while (*++name != '\0') { > - if (!isalpha(*name) && !isdigit(*name) && *name != '_') > - return false; > - } > - return true; > -} > - > #define TPARG_FL_RETURN BIT(0) > #define TPARG_FL_KERNEL BIT(1) > #define TPARG_FL_FENTRY BIT(2) > -- > 2.17.1 >
-- Masami Hiramatsu <mhiramat@kernel.org>
| |