Some newbie questions
Avi Kivity
avi@scylladb.com
Tue Aug 9 15:28:00 GMT 2016
On 08/09/2016 06:17 PM, David Smith wrote:
> On 08/09/2016 01:51 AM, Avi Kivity wrote:
>>
>> On 08/08/2016 05:58 PM, David Smith wrote:
>>>> 2. Inlined functions
>>>>
>>>> From the manual pages, it seems that inlined functions can be probed
>>>> (minus the .return probe), but I just get an error:
>>>>
>>>> semantic error: while resolving probe point: identifier 'process' at
>>>> script/home/avi/seastar/debug/task-latency.stap:3:7
>>>> source: probe
>>>> process("scylla").function("reactor::run_tasks()") {
>>>> ^
>>>>
>>>> semantic error: no match (similar functions:
>>>> _ZN7reactor14run_exit_tasksEv, statfs, dup, mkdir, ntohs)
>>> We're at the mercy of the compiler and the quality of the debuginfo it
>>> produces here when looking for inlined functions.
>>>
>>> If you want to investigate further here, you'll need to do the following:
>>>
>>> # eu-readelf -N --debug-dump=info scylla > scylla.log
>>>
>>> In scylla.log, look and see if you can find a subprogram with the name
>>> of the function you are interested in.
>> [1417f4] subprogram
>> external (flag_present) Yes
>> name (strp) "run_tasks"
>> decl_file (data1) 5
>> decl_line (data2) 812
>> linkage_name (strp)
>> "_ZN7reactor9run_tasksER15circular_bufferISt10unique_ptrI4taskSt14default_deleteIS2_EESaIS5_EE"
>>
>> declaration (flag_present) Yes
>> object_pointer (ref4) [141808]
>> sibling (ref4) [141813]
>> [141808] formal_parameter
>> type (ref4) [1423bd]
>> artificial (flag_present) Yes
>> [14180d] formal_parameter
>> type (ref4) [14a8a8]
> According to the above, that function isn't inlined. You might just try
> the following to see what functions stap can see:
>
> # stap -l 'process("scylla").function("*")' | grep run_tasks
process("/usr/bin/scylla").function("run_tasks@core/reactor.cc:1362")
Strangely not qualified by "reactor::".
>> I also switched to timer.profile. What's its resolution on normal
>> machines?
> timer.profile probe resolution is CONFIG_HZ. Check your kernel config
> and see "man stapprobes" for more details.
>
Thanks.
More information about the Systemtap
mailing list