This is the mail archive of the
systemtap@sourceware.org
mailing list for the systemtap project.
[Bug tapsets/10745] New: Give access to "hidden" tracepoints
- From: "jistone at redhat dot com" <sourceware-bugzilla at sourceware dot org>
- To: systemtap at sources dot redhat dot com
- Date: 7 Oct 2009 20:51:12 -0000
- Subject: [Bug tapsets/10745] New: Give access to "hidden" tracepoints
- Reply-to: sourceware-bugzilla at sourceware dot org
By "hidden" I mean tracepoints which are not exposed in a usable header. This
might be because the header is not in include/trace/ or otherwise not packaged
in kernel-devel, or even when it is present it might be dependent on some
subsystem-internals.
The only way I know to really discover *all* tracepoints is through debugfs on a
live kernel. That requirement doesn't really fit our general usage model.
I'm thinking instead to expose these as kernel.trace("foo").raw, analogous to
the kprobe.function("foo") which does no name checking. If you specify an
incorrect name, you just won't get any hits, but no harm is done.
It's possible to register a handler without knowing the full callback signature.
Instead of register_trace_foo(handler), we could imitate what that inline
really does with tracepoint_probe_register("foo", (void*)handler).
We couldn't know any argument names/types this way, but exposing $arg1, $arg2,
etc. as longs might be enough to be usable with @cast. However, that assumes
though that passing a foo_handler(long, long, ...) with an incorrect number of
parameters wouldn't do any harm.
--
Summary: Give access to "hidden" tracepoints
Product: systemtap
Version: unspecified
Status: NEW
Severity: normal
Priority: P2
Component: tapsets
AssignedTo: systemtap at sources dot redhat dot com
ReportedBy: jistone at redhat dot com
http://sourceware.org/bugzilla/show_bug.cgi?id=10745
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.