This is the mail archive of the
systemtap@sourceware.org
mailing list for the systemtap project.
Re: problems with sched tapset on ubuntu precise 3.2.0
- From: David Smith <dsmith at redhat dot com>
- To: Thiago Manel <thiago dot manel at gmail dot com>
- Cc: systemtap at sourceware dot org
- Date: Tue, 07 May 2013 13:28:21 -0500
- Subject: Re: problems with sched tapset on ubuntu precise 3.2.0
- References: <CAHiC6b0jFDRAcmkZq-KypjsoFO6kmfDH5S=64WbCbAEY0O1Obg at mail dot gmail dot com>
On 05/07/2013 10:05 AM, Thiago Manel wrote:
> Hi list,
>
> I'm facing the following error when trying to run testsuite/systemtap.examples/
> process/schedtimes.stp script
>
> stap schedtimes.stp -x 2064
>
> Warning: make exited with status: 2
> Warning: make exited with status: 2
> Warning: make exited with status: 2
> Warning: make exited with status: 2
> ^CWarning: make exited with status: 130
> semantic error: no match while resolving probe point
> kernel.trace("sched_switch")
> Pass 2: analysis failed. Try again with another '--vp 01' option.
>
> In fact, my installation does not know the "sched_switch" probe point ...
>
> stap -l 'kernel.function("sched_s*")'
> kernel.function("sched_set_stop_task@/build/buildd/linux-3.2.0/kernel/sched.c:2205")
> kernel.function("sched_setaffinity@/build/buildd/linux-3.2.0/kernel/sched.c:5543")
> kernel.function("sched_setscheduler@/build/buildd/linux-3.2.0/kernel/sched.c:5407")
> kernel.function("sched_setscheduler_nocheck@/build/buildd/linux-3.2.0/kernel/sched.c:5425")
> kernel.function("sched_show@/build/buildd/linux-3.2.0/fs/proc/base.c:1359")
> kernel.function("sched_show_task@/build/buildd/linux-3.2.0/kernel/sched.c:5998")
> kernel.function("sched_slice@/build/buildd/linux-3.2.0/kernel/sched_fair.c:514")
> kernel.function("sched_smt_power_savings_show@/build/buildd/linux-3.2.0/kernel/sched.c:7960")
> kernel.function("sched_smt_power_savings_store@/build/buildd/linux-3.2.0/kernel/sched.c:7966")
> kernel.function("sched_submit_work@/build/buildd/linux-3.2.0/kernel/sched.c:4473")
You misread the error message a bit. Here's how the scheduler.cpu_off
probe point is defined:
====
probe scheduler.cpu_off =
kernel.trace("sched_switch") !,
kernel.function("context_switch")
{
name = "cpu_off"
task_prev = $prev
task_next = $next
idle = __is_idle()
}
====
So, that probe point looks for the kernel tracepoint 'sched_switch' or
the kernel function 'context_switch' (if it finds the tracepoint, it
won't bother with the function).
Since you got that error, that means systemtap thinks you don't have either.
Let's test that theory. Try the following commands on your kernel and
see what you get. Your 3.2 kernel should have both (assuming
CONFIG_TRACEPOINTS is on).
# stap -l 'kernel.trace("sched_*")'
# stap -l 'kernel.function("context_switch")'
Is CONFIG_TRACEPOINTS on in your kernel?
--
David Smith
dsmith@redhat.com
Red Hat
http://www.redhat.com
256.217.0141 (direct)
256.837.0057 (fax)