From: "Tzvetomir Stoyanov (VMware)" <tz.stoyanov@gmail.com>
To: rostedt@goodmis.org, y.karadz@gmail.com
Cc: linux-trace-devel@vger.kernel.org
Subject: [PATCH v3 00/11] libtracefs dynamic events support
Date: Wed, 3 Nov 2021 17:44:06 +0200 [thread overview]
Message-ID: <20211103154417.246999-1-tz.stoyanov@gmail.com> (raw)
The libtracefs logic that works with ftrace dynamic events is unified
and capsulated into a new set of dynamic events APIs. This change makes
the code more consistent and reusable. Also, adding future libtracefs
support for uprobes and eprobes dynamic events is simplified.
The existing library APIs for kprobes and synthetic events are
reimplemented using the new dynamic events helpers.
Suggested-by: Yordan Karadzhov (VMware) <y.karadz@gmail.com>
v3 changes:
- Exposed dynamic events API as official tracefs APIs.
- Removed kprobe specific APIs, that duplicate corresponding dynamic events
APIs.
- Updated unit tests and man pages with the new dynamic events APIs.
- Fixed typos, found by Yordan.
v2 changes:
- Removed triple pointer from the APIs.
- Reimplement dynamic events parsing using strtok_r instead of strchr.
- Coding style fixes.
Tzvetomir Stoyanov (VMware) (11):
libtracefs: Add new public macros for bits manipulations
libtracefs: New APIs for dynamic events
libtracefs: New APIs for kprobe allocation
libtracefs: Remove redundant kprobes APIs
libtracefs: Change tracefs_kprobe_info API
libtracefs: Reimplement kprobe raw APIs
libtracefs: Extend kprobes unit test
libtracefs: Rename tracefs_synth_init API
libtracefs: Use the internal dynamic events API when creating
synthetic events
libtracefs: Update kprobes man pages
libtracefs: Document dynamic events APIs
Documentation/libtracefs-dynevents.txt | 257 +++++++++++
Documentation/libtracefs-kprobes.txt | 111 +++--
Documentation/libtracefs-synth.txt | 20 +-
Documentation/libtracefs-synth2.txt | 10 +-
Documentation/libtracefs.txt | 17 +
include/tracefs-local.h | 18 +
include/tracefs.h | 58 ++-
src/Makefile | 1 +
src/tracefs-dynevents.c | 601 +++++++++++++++++++++++++
src/tracefs-hist.c | 125 +++--
src/tracefs-kprobes.c | 545 +++++++---------------
src/tracefs-sqlhist.c | 6 +-
utest/tracefs-utest.c | 417 ++++++++++-------
13 files changed, 1479 insertions(+), 707 deletions(-)
create mode 100644 Documentation/libtracefs-dynevents.txt
create mode 100644 src/tracefs-dynevents.c
--
2.31.1
next reply other threads:[~2021-11-03 15:44 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-11-03 15:44 Tzvetomir Stoyanov (VMware) [this message]
2021-11-03 15:44 ` [PATCH v3 01/11] libtracefs: Add new public macros for bits manipulations Tzvetomir Stoyanov (VMware)
2021-11-03 16:24 ` Steven Rostedt
2021-11-03 16:34 ` Tzvetomir Stoyanov
2021-11-03 16:47 ` Steven Rostedt
2021-11-03 15:44 ` [PATCH v3 02/11] libtracefs: New APIs for dynamic events Tzvetomir Stoyanov (VMware)
2021-11-03 17:03 ` Steven Rostedt
2021-11-03 22:17 ` Steven Rostedt
2021-11-04 0:56 ` Steven Rostedt
2021-11-04 1:17 ` Steven Rostedt
2021-11-04 1:26 ` Steven Rostedt
2021-11-03 22:18 ` Steven Rostedt
2021-11-04 2:27 ` Steven Rostedt
2021-11-03 15:44 ` [PATCH v3 03/11] libtracefs: New APIs for kprobe allocation Tzvetomir Stoyanov (VMware)
2021-11-04 2:40 ` Steven Rostedt
2021-11-03 15:44 ` [PATCH v3 04/11] libtracefs: Remove redundant kprobes APIs Tzvetomir Stoyanov (VMware)
2021-11-03 15:44 ` [PATCH v3 05/11] libtracefs: Change tracefs_kprobe_info API Tzvetomir Stoyanov (VMware)
2021-11-04 3:06 ` Steven Rostedt
2021-11-03 15:44 ` [PATCH v3 06/11] libtracefs: Reimplement kprobe raw APIs Tzvetomir Stoyanov (VMware)
2021-11-03 15:44 ` [PATCH v3 07/11] libtracefs: Extend kprobes unit test Tzvetomir Stoyanov (VMware)
2021-11-03 15:44 ` [PATCH v3 08/11] libtracefs: Rename tracefs_synth_init API Tzvetomir Stoyanov (VMware)
2021-11-03 15:44 ` [PATCH v3 09/11] libtracefs: Use the internal dynamic events API when creating synthetic events Tzvetomir Stoyanov (VMware)
2021-11-03 15:44 ` [PATCH v3 10/11] libtracefs: Update kprobes man pages Tzvetomir Stoyanov (VMware)
2021-11-03 15:44 ` [PATCH v3 11/11] libtracefs: Document dynamic events APIs Tzvetomir Stoyanov (VMware)
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=20211103154417.246999-1-tz.stoyanov@gmail.com \
--to=tz.stoyanov@gmail.com \
--cc=linux-trace-devel@vger.kernel.org \
--cc=rostedt@goodmis.org \
--cc=y.karadz@gmail.com \
/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;
as well as URLs for NNTP newsgroup(s).