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: How to use systemtap with linux 3.5 userspace probes ?


On Wed, Aug 22, 2012 at 4:06 AM, Frank Ch. Eigler <fche@redhat.com> wrote:
>
> Hi, David -
>
> cournape wrote:
>
>> My understanding is that systemtap 1.8 supports userspace probing with
>> upstream kernel >=3.5
>
> Ues.
>
>> I was expecting to be able to use the same dysp probes as with the
>> utrace patches, but trying a simple stap scripts such as:
>>
>> probe process("./a.out").function("foo")
>> { printf("hello\n"); }
>> fails to run:
>>
>> semantic error: while resolving probe point [...]
>
> Yes, this should work.
>
>
>> Pass 2: analysis failed.  Try again with another '--vp 01' option.
>> Is there some information I am missing ?
>
> Not sure; it's possible that your kernel is not compiled with the
> CONFIG_UPROBES option, or something like that.  Please run stap-report
> (ideally the freshest version from systemtap git), and "stap --vp 08
> your_script.stp".

I built my own kernel specifically from sources to try this feature:

grep CONFIG_UPROBE /boot/config-`uname -r`
CONFIG_UPROBES=y
CONFIG_UPROBE_EVENT=y

stap --vp 08 foo.stp gives

Extracting build ID.
dwarf_builder::build for /home/cournape/a.out
parse 'foo', func 'foo'
pattern '/home/cournape/a.out' matches module '/home/cournape/a.out'
focused on module '/home/cournape/a.out' = [0x400000-0x601038, bias 0
file /home/cournape/a.out ELF machine |x86_64 (code 62)
focused on module '/home/cournape/a.out'
module function cache /home/cournape/a.out size 1
semantic error: while resolving probe point: identifier 'process' at foo.stp:1:7
        source: probe process("./a.out").function("foo")
                      ^

semantic error: no match
deleting module_cache
Pass 2: analyzed script: 0 probe(s), 0 function(s), 0 embed(s), 0
global(s) using 63056virt/26028res/2396shr/24252data kb, in
0usr/0sys/4real ms.
Pass 2: analysis failed.  Try again with another '--vp 01' option.
Running rm -rf /tmp/stapGjgtoO
Spawn waitpid result (0x0): 0
Removed temporary directory "/tmp/stapGjgtoO"

I attached the output of stap-report,

thanks for the help,

David

Attachment: report.log
Description: Binary data


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