[lttng-dev] Trying to understand use of lttng enable-event --kernel --userspace-probe=
Mathieu Desnoyers
mathieu.desnoyers at efficios.com
Thu May 18 15:16:45 EDT 2023
On 2023-05-18 15:07, Brian Hutchinson wrote:
[...]
>>
>> If you attach to an ELF symbol (function), then there is no USDT in
>> play, so it should not be related to the issue you have.
>
> That is what I was thinking which is why I wanted to try it.
>
>>
>> But if your functions happen to be inlined, then there will be nothing
>> to attach to. Perhaps this is what happens there ?
>
> I don't see any evidence of anything being inlined in this module. I
> grepped the code to verify.
>
> Back to being stumped/stuck.
Make sure to check the resulting assembler and ELF symbol tables.
The compiler is free to inline various functions unless they are
explicitly marked as __attribute__((noinline)). Also, if LTO is enabled,
further optimization can be done at link-time.
One purpose of the UST tracepoints is to be less fragile with respect to
specific optimizations done by the compiler and linker, thus
guaranteeing that whatever is instrumented with a tracepoint is indeed
available for tracing.
Also, double-check that the path you pass to --userspace-probe really
targets your executable or .so binary file, and is not just a symbolic link.
Thanks,
Mathieu
--
Mathieu Desnoyers
EfficiOS Inc.
https://www.efficios.com
More information about the lttng-dev
mailing list