commit | bb0e154023150a87068ea3c5172eb51afba95f0c | [log] [tgz] |
---|---|---|
author | Eric Seckler <eseckler@google.com> | Thu Jan 16 13:44:13 2020 +0000 |
committer | Eric Seckler <eseckler@google.com> | Thu Jan 16 13:44:13 2020 +0000 |
tree | 9f246104c9c1192d21c536f20346692b9b9f2a62 | |
parent | 54280d3ec8f16f8f9eb2e086365ee7b4c3fe20cb [diff] |
processor: Translate duplicate pids/tids during json export The old trace viewer / TBMv2 can't handle it when there are multiple "main" threads in the same process. It doesn't have the concept of "pid/tid reuse", i.e. unique pids/tids, like trace processor. Instead, we have to detect duplicate pids/tids when we export to json and translate them to unique substitute values instead. This patch does this by choosing unused values at the upper end of the uint32 space. This patch also refactors ExportJson to use a helper object (JsonExporter) to store some state. Also updates thread/process name parsing in TrackEventParser to not set thread/process names from UNSPECIFIED chrome types. Bug: 130786269 Change-Id: I4b6ac5c7b892604e3fd4d3415bd239bd507df0fc
Perfetto is an open-source project for performance instrumentation and tracing of Linux/Android/Chrome platforms and user-space apps.
See www.perfetto.dev for docs.
See /docs/contributing.md for instructions.
The source-of-truth repo is Android's Gerrit. The GitHub repo is a read-only mirror.
You can reach us on our Discord channel. If you prefer using IRC we have an experimental Discord <> IRC bridge synced with #perfetto-dev
on Freenode.