Provided by: systemtap-doc_2.3-1ubuntu1.4_all 

NAME
warning::debuginfo - systemtap missing-debuginfo warnings
DESCRIPTION
For many symbolic probing operations, systemtap needs DWARF debuginfo for the relevant binaries. This
often includes resolving function/statement probes, or $context variables in related handlers. DWARF
debuginfo may be found in the original binaries built during compilation, or may have been split into
separate files. The SYSTEMTAP_DEBUGINFO_PATH environment variable affects where systemtap looks for
these files.
If your operating system came from a distributor, check with them if debuginfo packages or variants are
available. If your distributor does not have debuginfo-equipped binaries at all, you may need to rebuild
it.
kernel debuginfo
For scripts that target the kernel, systemtap may search for the vmlinux file created during its
original build. This is distinct from the boot-loader's compressed/stripped vmlinuz file, and
much larger. If you have a hand-built kernel, make sure it was built with the CONFIG_DEBUG_INFO=y
option.
process debuginfo
For scripts that target user-space, systemtap may search for debuginfo. If you have hand-built
binaries, use CFLAGS=-g -O2 to compile them.
unnecessary debuginfo
In some cases, a script may be altered to avoid requiring debuginfo. For example, as script that
uses probe syscall.* probes could try instead probe nd_syscall.* (for non-DWARF syscall): these
work similarly, and use more intricate (fragile) tapset functions to extract system call
arguments. Another option is use of compiled-in instrumentation such as kernel tracepoints or
user-space <sys/sdt.h> markers in libraries or executables, which do not require debuginfo. If
debuginfo was required for resolving a complicated $var->foo->bar expression, it may be possible
to use @cast(var,"foo","foo.h")->foo->bar to synthesize debuginfo for that type from a header
file.
AUTOMATION
On some platforms, systemtap may advise what commands to run, in order to download needed debuginfo.
Another possibility is to invoke systemtap with the --download-debuginfo flag. The stap-prep script
included with systemtap may be able to download the appropriate kernel debuginfo. Another possibility is
to install and use a stap-server remote-compilation instance on a machine on your network, where
debuginfo and compilation resources can be centralized. Try the stap --use-server option, in case such a
server is already running.
SEE ALSO
stap(1), stappaths(7), stap-server(8), strip(1), error::reporting(7stap) error::contextvars(7stap)
WARNING::DEBUGINFO(7stap)