linux-trace-devel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: "Tzvetomir Stoyanov (VMware)" <tz.stoyanov@gmail.com>
To: rostedt@goodmis.org
Cc: linux-trace-devel@vger.kernel.org
Subject: [PATCH v3 0/3] Initial trace-cmd support for ftrace uprobes
Date: Wed, 25 Nov 2020 12:44:19 +0200	[thread overview]
Message-ID: <20201125104422.823216-1-tz.stoyanov@gmail.com> (raw)

Ftrace supports uprobes - trace events on user space applications.
Trace-cmd cannot configure uprobes, in order to support it this new
functionality is introduced:
 - Function name to file offset mapping, this information is extracted
  from the dwarf and ELF headers in the binary file.
 - New options are added to "trace-cmd record" for setting a uprobe on
   given file and the libraries it depends on:
    --uprobe file:function
    --uprobe-ret file:function
    --libs
    --no-libs

[
 v3 changes:
   - Added DEBUG_INTERNALS local define in trace-obj-debug.c, for printing
     debug information about resolving process.
   - Replaced function name regex match with simple wildcards match.
   - Implemented functionality to search for functions in the libraries that
     the given application depends on.
   - Added --libs and --no-libs arguments to trace-cmd record.
 v2 changes:
   - Renamed some internal trace-cmd functions, to not overlap the bfd
     library namespace. Suggested by Steven Rostedt.
]

Tzvetomir Stoyanov (VMware) (3):
  trace-cmd: Internal refactoring of pid address map logic
  trace-cmd: New internal APIs for reading ELF header
  trace-cmd: [POC] Add support for uprobes

 Makefile                       |  10 +
 tracecmd/Makefile              |   2 +
 tracecmd/include/trace-local.h |  56 +-
 tracecmd/trace-obj-debug.c     | 908 +++++++++++++++++++++++++++++++++
 tracecmd/trace-record.c        | 204 ++++----
 tracecmd/trace-uprobes.c       | 223 ++++++++
 tracecmd/trace-usage.c         |   8 +
 7 files changed, 1297 insertions(+), 114 deletions(-)
 create mode 100644 tracecmd/trace-obj-debug.c
 create mode 100644 tracecmd/trace-uprobes.c

-- 
2.28.0


             reply	other threads:[~2020-11-25 10:44 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-11-25 10:44 Tzvetomir Stoyanov (VMware) [this message]
2020-11-25 10:44 ` [PATCH v3 1/3] trace-cmd: Internal refactoring of pid address map logic Tzvetomir Stoyanov (VMware)
2020-11-25 10:44 ` [PATCH v3 2/3] trace-cmd: New internal APIs for reading ELF header Tzvetomir Stoyanov (VMware)
2020-12-03  2:39   ` Steven Rostedt
2020-11-25 10:44 ` [PATCH v3 3/3] trace-cmd: [POC] Add support for uprobes 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=20201125104422.823216-1-tz.stoyanov@gmail.com \
    --to=tz.stoyanov@gmail.com \
    --cc=linux-trace-devel@vger.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;
as well as URLs for NNTP newsgroup(s).