Closed tiago-rodrigues closed 9 months ago
Gave this a try and it seems to work very well! I am able to record GNOME Shell with offline symbol resolving without much extra lag seemingly.
I'm testing libunwind bt + dynload and I'm getting funny strings in the backtrace occasionally, could be memory corruption?
Okay, I get this without dynload too, so I'll make an issue instead.
Made an issue at #684; I somewhat suspect the latter changes in this PR though, because when I tested it in the beginning it seemed to work fine.
On glibc platforms, add an image cache to avoid calling dladdr() when doing offline symbol resolution, as dladdr() can cause contention with other dl* calls (see: https://github.com/wolfpld/tracy/pull/665#issuecomment-1817363122).
Add support for libbacktrace to detect new elfs have been dynamically loaded after backtrace_initialize() has been called, and consider them for further symbol resolution.