This is the mail archive of the systemtap@sourceware.org mailing list for the systemtap project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: problems with sched tapset on ubuntu precise 3.2.0


David,

The first check indicates the kernel was compiled correctly
(CONFIG_TRACEPOINTS=y)

cat /boot/config-`uname -r` | grep TRACE
CONFIG_STACKTRACE_SUPPORT=y
# CONFIG_RCU_TRACE is not set
# CONFIG_TREE_RCU_TRACE is not set
CONFIG_TRACEPOINTS=y
CONFIG_HAVE_ARCH_TRACEHOOK=y
CONFIG_CAN_PM_TRACE=y

I also run the new schedtimes.stp, unfortunately I faced the error you
said, it was not able find the args ...

semantic error: not accessible at this address (0xffffffff81659cc6,
dieoffset: 0x7bd1ea): identifier '$prev' at :35:18
        source:   previous_pid = $prev->pid;


I will downgrade to a 2.* kernel, thanks for the helping anyway.

On Wed, May 8, 2013 at 11:15 AM, David Smith <dsmith@redhat.com> wrote:
> On 05/08/2013 08:25 AM, Thiago Manel wrote:
>> Hi David, sorry for the late response
>>
>> - for the first check, I see an error:
>>
>> stap -vv -l 'kernel.trace("sched_*")'
>> Systemtap translator/driver (version 1.6/0.152 non-git sources)
>> Copyright (C) 2005-2011 Red Hat, Inc. and others
>> This is free software; see the source for copying conditions.
>> enabled features: AVAHI LIBSQLITE3 NSS BOOST_SHARED_PTR TR1_UNORDERED_MAP NLS
>> Created temporary directory "/tmp/stapNw4kVW"
>> Session arch: x86_64 release: 3.2.0-23-generic
>> Searched: " /usr/share/systemtap/tapset/x86_64/*.stp ", found: 4, processed: 4
>> Searched: " /usr/share/systemtap/tapset/*.stp ", found: 73, processed: 73
>> Pass 1: parsed user script and 77 library script(s) using
>> 84096virt/22508res/2556shr kb, in 60usr/0sys/70real ms.
>> semantic error: no match while resolving probe point kernel.trace("sched_*")
>> Pass 2: analyzed script: 0 probe(s), 0 function(s), 0 embed(s), 0
>> global(s) using 230984virt/23700res/2908shr kb, in
>> 40usr/100sys/125real ms.
>> Running rm -rf /tmp/stapNw4kVW
>> Spawn waitpid result (0x0): 0
>>
>> - whereas for the second one, it succeeds:
>>
>>  stap -l 'kernel.function("context_switch")'
>> kernel.function("context_switch@/build/buildd/linux-3.2.0/kernel/sched.c:3287")
>>
>> Regarding the CONFIG_TRACEPOINTS (I'm not sure I'm looking to the
>> right place) I have ...
>
> On a fedora system, you'd look in /boot/config-`uname -r`. I don't know
> where you'd find the kernel config file on ubuntu.
>
> I see where the error is coming from now. The process/schedtimes.stp
> script is written to only use tracepoints, it doesn't have the
> kernel.function fallback like the scheduler.cpu_off tapset probe alias.
> So, if your kernel doesn't have the sched kernel tracepoints the
> schedtimes.stp script won't work as written. We could try adding in the
> kernel.function fallback, but on many kernels that kernel function gets
> inlined which makes it difficult to find the arguments.
>
> Here's an (untested) version of schedtimes.stp with the kernel.function
> fallbacks added. See if it works for you.
>
> --
> David Smith
> dsmith@redhat.com
> Red Hat
> http://www.redhat.com
> 256.217.0141 (direct)
> 256.837.0057 (fax)



-- 
Thiago Emmanuel Pereira da Cunha Silva
-----------------------------------------------
www.lsd.ufcg.edu.br/~thiagoepdc
-----------------------------------------------


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]