commit | 6dd9c8b72f2a44c7c4619aae5a64b26c6a878904 | [log] [tgz] |
---|---|---|
author | Kirill Timofeev <ktimofeev@google.com> | Fri Nov 01 00:41:20 2024 +0000 |
committer | Kirill Timofeev <ktimofeev@google.com> | Fri Nov 01 00:41:20 2024 +0000 |
tree | f59e656d952af55f51c59230dd9aa770bb46c44e | |
parent | acf33a93eea857104daa24b994a25077c7228239 [diff] |
Enable Thread Safety Annotations for Perfetto standalone builds. - Add 'thread_annotations.h' that contains thread safety macros, copied from the Chromium repo with the 'PERFETTO_' prefix add. - These safety macros are expanded into no-op if the 'PERFETTO_THREAD_SAFETY_ANNOTATIONS' build flag is not defined, which allows us to build non-standalone builds without enabling thread safety analysis. - Annotate mutex usages in 'src/base/' and 'include/perfetto/ext/base/'. See https://clang.llvm.org/docs/ThreadSafetyAnalysis.html for details on how thread safety analysis works. Bug: 236942309 Change-Id: Ie635f1ffae7eb9a90ef62afd0d243e8233b55687
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.