Bug 1329114 - Update talos symbolication to work with profile format version 5. r?jmaher
MozReview-Commit-ID: K2Hd6pPLaoB
--- a/testing/talos/talos/profiler/symbolication.py
+++ b/testing/talos/talos/profiler/symbolication.py
@@ -256,21 +256,18 @@ class ProfileSymbolicator:
shared_libraries = profile_json["libs"]
addresses = self._find_addresses(profile_json)
symbols_to_resolve = self._assign_symbols_to_libraries(
addresses, shared_libraries)
symbolication_table = self._resolve_symbols(symbols_to_resolve)
self._substitute_symbols(profile_json, symbolication_table)
- for i, thread in enumerate(profile_json["threads"]):
- if isinstance(thread, basestring):
- thread_json = json.loads(thread)
- self.symbolicate_profile(thread_json)
- profile_json["threads"][i] = json.dumps(thread_json)
+ for process in profile_json["processes"]:
+ self.symbolicate_profile(process)
def _find_addresses(self, profile_json):
addresses = set()
for thread in profile_json["threads"]:
if isinstance(thread, basestring):
continue
for s in thread["stringTable"]:
if s[0:2] == "0x":