Bug 17921 - kernel backtrace missing /proc/kallsyms symbols
Summary: kernel backtrace missing /proc/kallsyms symbols
Status: RESOLVED FIXED
Alias: None
Product: systemtap
Classification: Unclassified
Component: runtime (show other bugs)
Version: unspecified
: P2 normal
Target Milestone: ---
Assignee: Unassigned
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2015-02-03 18:44 UTC by Brendan Gregg
Modified: 2015-09-09 17:38 UTC (History)
1 user (show)

See Also:
Host:
Target:
Build:
Last reconfirmed:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Brendan Gregg 2015-02-03 18:44:22 UTC
Profiling kernel stack traces shows hex addresses:

# stap --all-modules -ve 'global s; probe timer.profile { s[backtrace()] <<< 1; } probe end { foreach (i in s+) { print_stack(i); printf("\t%d\n", @count(s[i])); } }'
Pass 1: parsed user script and 102 library script(s) using 152856virt/28460res/2156shr/27052data kb, in 140usr/30sys/165real ms.
Pass 2: analyzed script: 2 probe(s), 6 function(s), 4 embed(s), 1 global(s) using 154056virt/30500res/2972shr/28252data kb, in 10usr/110sys/125real ms.
WARNING: missing unwind/symbol data for module 'kernel'
Pass 3: translated to C into "/tmp/staprDrjyS/stap_ad1e5b386c49b6c6eb4d3be0af23f502_4294_src.c" using 154172virt/31012res/3348shr/28368data kb, in 140usr/110sys/537real ms.
Pass 4: compiled C into "stap_ad1e5b386c49b6c6eb4d3be0af23f502_4294.ko" in 1850usr/740sys/2511real ms.
Pass 5: starting run.
 ^C 0xffffffff810013aa : 0xffffffff810013aa
 0xffffffff8100a190 : 0xffffffff8100a190
 0xffffffff8101e39d : 0xffffffff8101e39d
 0xffffffff8101dc59 : 0xffffffff8101dc59
 0xffffffff8100a979 : 0xffffffff8100a979
 0xffffffff815841c9 : 0xffffffff815841c9
	250
 0xffffffff810013aa : 0xffffffff810013aa
 0xffffffff8100a190 : 0xffffffff8100a190
 0xffffffff8101e39d : 0xffffffff8101e39d
 0xffffffff8101dc59 : 0xffffffff8101dc59
 0xffffffff8157f825 : 0xffffffff8157f825
 0xffffffff819d1f28 : 0xffffffff819d1f28
 0xffffffff819d1964 : 0xffffffff819d1964
 0xffffffff819d1356 : 0xffffffff819d1356
 0xffffffff819d528b : 0xffffffff819d528b
	466
# stap -V
Systemtap translator/driver (version 2.6/0.152, commit release-2.5-197-gcf88ea804213)
Copyright (C) 2005-2014 Red Hat, Inc. and others
This is free software; see the source for copying conditions.enabled features: TR1_UNORDERED_MAP NLS

This system does not have kernel debuginfo. However, the symbols printed can be found in /proc/kallsyms, such that I can do some human (or scripted) post-translation of this output. SystemTap should use /proc/kallsyms translation, when dwarf unwind is unavailable.
Comment 1 Felix Lu 2015-09-09 17:38:51 UTC
The SystemTap translator now fetches symbols from /proc/kallsyms if debuginfo is not available.