[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Libunwind-devel] dwarf_find_debug_frame no longer exported - possibly b
From: |
Luke Diamand |
Subject: |
[Libunwind-devel] dwarf_find_debug_frame no longer exported - possibly breaks perf callchain support? |
Date: |
Sat, 17 Mar 2018 15:07:39 +0000 |
In b56e4cb88989f82988a6a70acb32e187e88b5cac ("ALIAS dwarf symbols"),
dwarf_find_debug_frame() went from being public to hidden. I could be
wrong about this, but I think this may stop perf from using libunwind.
This is the change:
-int
+HIDDEN int
dwarf_find_debug_frame (int found, unw_dyn_info_t *di_debug, unw_word_t ip,
Here's the code in tools/build/feature/test-libunwind-debug-frame.c
extern int
UNW_OBJ(dwarf_find_debug_frame) (int found, unw_dyn_info_t *di_debug,
unw_word_t ip, unw_word_t segbase,
const char *obj_name, unw_word_t start,
unw_word_t end);
#define dwarf_find_debug_frame UNW_OBJ(dwarf_find_debug_frame)
int main(void) {
dwarf_find_debug_frame(0, NULL, 0, 0, NULL, 0, 0);
return 0;
}
(And it gets used inside perf to actually find the debug frames).
I'm not a perf expert *or* a libunwind expert. Experimentally I find
that with libunwind 1.3 I don't get callstacks in perf unless I get
rid of the HIDDEN.
Am I missing something obvious?
Thanks
Luke
(Sorry, not forgotten about the performance problem, I've just not
found time to look at it).
- [Libunwind-devel] dwarf_find_debug_frame no longer exported - possibly breaks perf callchain support?,
Luke Diamand <=