Feature #968
open
- Status changed from New to Feedback
- Target version changed from 2.8 to 2.9
- Target version deleted (
2.9)
Kernel and userspace callstack context fields for kernel events are available in LTTng 2.11. Userspace callstack information is currently only available for x86 32/64 systems.
From: What’s new in LTTng 2.11?
Two new context fields are available for Linux kernel channels:
callstack-kernel
callstack-user
Thanks to those, you can record the Linux kernel and user call stacks when a kernel event occurs. For example:
lttng enable-event --kernel --syscall open
lttng add-context --kernel --type=callstack-kernel --type=callstack-user
When an open() system call occurs, LTTng attaches the kernel and user call stacks to the recorded event.
- Note: LTTng cannot always sample the user space call stack reliably. For instance, LTTng cannot sample the call stack of user applications and libraries compiled with the -fomit-frame-pointer option. In such a case, the tracing is not affected, but the sampled user space call stack may only contain the user call stack’s topmost address.
(I'm putting this comment in the same issue for now, but can move to another if that becomes more relevant.)
It would be nice to document the userspace x86 limitation more clearly. I found some mentions of the limitation, but they require digging:
Also available in: Atom
PDF