backtalk Project

Abstract

Once upon a time, people wrote the software themselves. When they get a crash, they debugged it and sent the information to developers, or even they fixed it. And it was Good. Then we got more non-hacker users that compiled the software themselves and they still got crashed, so we wrote tools for sending automatically debug information to developers. And it was Good. Now, most of users install a vendor based OSS distribution, optimized and without debugging symbols, so our automatically debug info collecting tools, as bug-buddy+gdb, became useless. Even more, they now don't install gdb. And this is bad. So the backtalk project tries to create a full infrastructure to solve this. It is based on a client/server structure: a client library to catch crashes or invoked by demand, collecting as much information from obscure but known binaries (libraries and executables from a know vendor, with a know md5 signature), and then sending to the appropriate "debugging" server. The server side identifies right libs and and executable and populates the memory dump with debug symbols, providing an useful stack trace and information about the state.

Resources

  • Google CoreDumper: for getting custom cores

  • Sysprof: Useful code for using /usr/lib/debug info from Fedora and SuSE

  • Build Buddy: Useful info for setting up jailed distributions for the server side

  • Apport: a Ubuntu project with the same goal (automated crash reports). One interesting feature is apport-retrace: this is a tool that can regenerate a more informative stack trace with symbol names on the developer's machine that may not have that specific version of a program installed. It gets the debugging info from a separate package repository by matching the package version numbers.

Helping

We don't have any mailing list yet, neither code, just prototyping, so feel free to add your stuff here.

Attic/BackTalk (last edited 2013-11-26 21:17:07 by WilliamJonMcCann)