This is the mail archive of the
systemtap@sourceware.org
mailing list for the systemtap project.
Re: SystemTap fails to find kernel tracepoints
- From: Josh Stone <jistone at redhat dot com>
- To: David Smith <dsmith at redhat dot com>, KDr2 <killy dot draw at gmail dot com>, systemtap at sourceware dot org
- Date: Mon, 08 Dec 2014 17:37:19 -0800
- Subject: Re: SystemTap fails to find kernel tracepoints
- Authentication-results: sourceware.org; auth=none
- References: <CAHfjm6gvwwdCKEjf+pAczYW37S5wg8m=EzpitFvZbj8yke5a=Q at mail dot gmail dot com> <5485C8EE dot 6090708 at redhat dot com>
On 12/08/2014 07:51 AM, David Smith wrote:
> Systemtap is probably having problems with finding the tracepoint
> header files (which would be in kernel-devel on a fedora system).
Looking at a jessie VM I have laying around, I see:
/lib/modules/3.16.0-4-amd64
build -> /usr/src/linux-headers-3.16.0-4-amd64
source -> /usr/src/linux-headers-3.16.0-4-common
That is, they're pointing to different locations, whereas on Fedora we
have "source -> build". And Debian's source/ has a lot more in it than
build/ does, including the headers in include/trace/events/ that we use
to figure out tracepoints and their precise types.
It appears to be this way on wheezy too. Does this mean debian users
have never been able to use systemtap with tracepoints? Does anybody
have past experience here?
In stap, we do have separate variables for kernel_build_tree and
kernel_source_tree. On Fedora, build_tree has just the headers
(including trace/events), and source_tree is used for reading the full
kernel sources in /usr/src/debug/kernel-$VERSION, from the
kernel-debuginfo rpm. Debian's source link isn't really that -- it's
still just headers -- but we could probably use it that way to get
tracepoints working. AFAIK Debian doesn't have full debuginfo sources
in a package anyway.