commit | 2cef5160cf475c312f759b1651bb6b8a933f8c02 | [log] [tgz] |
---|---|---|
author | Mikhail Khokhlov <khokhlov@google.com> | Mon Oct 17 14:40:19 2022 +0100 |
committer | Mikhail Khokhlov <khokhlov@google.com> | Mon Oct 17 14:40:19 2022 +0100 |
tree | 7803df3226202366f50f95af6a44048999d910b8 | |
parent | 114901f5e50245d31c07b707cd0f5c3536b13d37 [diff] |
Add a flag to call data_source callbacks out of lock To avoid lock order inversion issues, we try not to call into embedder code under a lock, where possible (because we can't prevent the embedder from doing the opposite: holding a lock and calling into Perfetto code). This CL adds a flag for a data source to allow calling callbacks without a lock. It also allows unlocked callbacks for the TrackEvent data source (which is responsible for most deadlock issues in Chrome). Bug: b/245121030 Change-Id: I768ef738d38ed6003ae217d9b5f6cf9408791439
Perfetto is a production-grade open-source stack for performance instrumentation and trace analysis. It offers services and libraries and for recording system-level and app-level traces, native + java heap profiling, a library for analyzing traces using SQL and a web-based UI to visualize and explore multi-GB traces.
See https://perfetto.dev/docs or the /docs/ directory for documentation.