From: Tom Zanussi <zanussi@kernel.org>
To: rostedt@goodmis.org
Cc: mhiramat@kernel.org, linux-kernel@vger.kernel.org
Subject: [PATCH v4 0/4] tracing: Add and use event_command parsing func helpers
Date: Fri, 10 Dec 2021 15:16:21 -0600 [thread overview]
Message-ID: <cover.1639170140.git.zanussi@kernel.org> (raw)
With more event commands being implemented, it's been pointed out that
it would make sense to clean up the existing ones and make it easier
to implement new ones without copying a lot of boilerplate. The main
culprit here is the event_command.func() callback - the rest of the
event_command infrastructure has default implementations that work for
most implementations. The func() callback is a little different in
that every new command needs to customize parsing to some extent.
This patchset attempts to help clean that up and make it easier for
new users to deal with.
v4: Added two patches changing the names of event_command.func() and
event_trigger_ops.func() to make them reflect their functions.
Added back missing kfree(trigger_data) in event_trigger_callback().
Changed char *param to const char *param in
event_trigger_check_remove() and event_trigger_empty_param().
Changed event_trigger_separate_filter() to use separate param and
filter outparams, and changed the name of the param inparam to
param_and_filter to better reflect its contents and avoid the
clash with new param outparam. Changed all parse()
implementations to use this new scheme.
Fixed some typos and added more extensive comments with examples
explaining various things that were mentioned as causing confusion
and just in general tried to clarify things with respect to the
callbacks and parameters.
v3: broke up event_trigger_check() into smaller functions instead of
parameterizing it, and added function documentation.
v2: removed unused event_trigger_remove(). No change in functionality.
The following changes since commit a6ed2aee54644cfa2d04ca86308767f5c3a087e8:
tracing: Switch to kvfree_rcu() API (2021-12-06 17:53:50 -0500)
are available in the Git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/zanussi/linux-trace.git ftrace/cleanup-hist-func-v4
Tom Zanussi (4):
tracing: Change event_command func() to parse()
tracing: Change event_trigger_ops func() to trigger()
tracing: Add helper functions to simplify event_command.parse()
callback handling
tracing: Have existing event_command.parse() implementations use
helpers
kernel/trace/trace.h | 63 +++-
kernel/trace/trace_eprobe.c | 11 +-
kernel/trace/trace_events_hist.c | 109 +++---
kernel/trace/trace_events_trigger.c | 558 ++++++++++++++++++++--------
4 files changed, 515 insertions(+), 226 deletions(-)
--
2.17.1
next reply other threads:[~2021-12-10 21:16 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-12-10 21:16 Tom Zanussi [this message]
2021-12-10 21:16 ` [PATCH v4 1/4] tracing: Change event_command func() to parse() Tom Zanussi
2021-12-10 21:16 ` [PATCH v4 2/4] tracing: Change event_trigger_ops func() to trigger() Tom Zanussi
2021-12-10 21:16 ` [PATCH v4 3/4] tracing: Add helper functions to simplify event_command.parse() callback handling Tom Zanussi
2021-12-13 13:46 ` Masami Hiramatsu
2021-12-13 20:21 ` Tom Zanussi
2021-12-10 21:16 ` [PATCH v4 4/4] tracing: Have existing event_command.parse() implementations use helpers Tom Zanussi
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=cover.1639170140.git.zanussi@kernel.org \
--to=zanussi@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mhiramat@kernel.org \
--cc=rostedt@goodmis.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox