-
Notifications
You must be signed in to change notification settings - Fork 236
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Optional fall back to LLVM symbolizer markup #96
Comments
This seems like something to be done by the code that uses libbacktrace, not by libbacktrace itself. libbacktrace just returns file and funcition names, it doesn't print them. Well, except for |
Unfortunately, getting this to work requires the detailed memory layout of the process to be emitted as markup. I don't think it's likely that you'd get N utility authors to I was hoping from a systems integrator perspective that there'd be an environment variable that could be used to turn this on for disparate utilities that depend on libbacktrace library. Then, you could run over backtrace logs produced by stripped binaries and symbolize them after the fact. That's how things work for Fuchsia today, and it's great, but there's nothing Fuchsia-specific about it, and it'd be nice to be able to bring this to the embedded Linux space as well. |
But, again, libbacktrace doesn't print anything. I don't understand how you think that libbacktrace should change. |
Sorry, I had meant to imply (and should have stated) that I'd like to see a change to I've also been operating under the assumption that the most common mode of use for the library is to |
Those are good questions about |
libbacktrace relies on |
Now that Symbolizer Markup has landed in LLVM 15.0.2, it would be possible to add an option to emit this markup whenever symbol information is unavailable (fully-stripped binaries, etc.).
Producing symbolizer markup would allow llvm-symbolizer to produce human-readable backtraces from it after the fact, looking up the necessary artifacts using debuginfod. This complements #79; since it would be nice to have debuginfod lookups handled transparently, but that's not always possible (e.g., for embedded or sandboxed environments).
This should be relatively straightforward to implement, since the format is just a simple textual representation of the memory layout of the process and the return addresses of the backtrace.
The text was updated successfully, but these errors were encountered: