[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.



Mathieu Desnoyers
EfficiOS Inc.

More information about the lttng-dev mailing list