Closed
Bug 802103
Opened 11 years ago
Closed 10 years ago
Breakpad stackwalking optimization: do symbol lookup directly from native debug symbols
Categories
(Toolkit :: Crash Reporting, defect)
Toolkit
Crash Reporting
Tracking
()
RESOLVED
FIXED
People
(Reporter: ted, Assigned: ted)
References
Details
Currently Julian's patch for doing SPS unwinding using Breakpad is using the existing Breakpad symbol dumping classes to construct a symbol file in memory, and then using the existing symbol-parsing classes to built in-memory data structures that are used for unwinding. This is pretty wasteful. If we implemented a new subclass of SourceLineResolverInterface that used the DWARF parsing classes directly to build its in-memory data structures, we could skip the serialization and parsing steps. This is a fairly big chunk of the time spent running the unwinder, but it's also a fixed cost in that there's one symbol file per module and they only need to get loaded once.
Assignee | ||
Updated•11 years ago
|
Assignee: nobody → ted.mielczarek
Assignee | ||
Comment 1•11 years ago
|
||
I talked to Julian about this, but I'll update the bug as well. I implemented a Breakpad class to do this: http://hg.mozilla.org/users/tmielczarek_mozilla.com/breakpad-local-symbols/ This implements LocalDebugInfoSymbolizer, which can be passed to MinidumpProcessor or a Stackwalker subclass directly and handles loading debug info from local libraries and feeding it to the Stackwalker. (There's also a minidump_stackwalk copy in that repo that uses it which I used for testing.) I've got patches in my mq that hook this up on top of Julian's patch in bug 779291, it all seems to work.
Assignee | ||
Comment 2•10 years ago
|
||
Julian rolled this into his patch in bug 779291, we'll track it there.
Status: NEW → RESOLVED
Closed: 10 years ago
Resolution: --- → FIXED
You need to log in
before you can comment on or make changes to this bug.
Description
•