aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2024-03-14Snap for 11577648 from 745fd9a9e233cdf7961a146418f27392476cf422 to ↵android-vts-14.0_r4android-cts-14.0_r4android14-tests-releaseAndroid Build Coastguard Worker
android14-tests-release Change-Id: I5ba0279aa0a1ce6bd4947e4d49618be06d946bff
2024-03-14Increase heap profiling trace duration am: f72898be3e am: 03e4d83b95android14-tests-devDaniele Di Proietto
Original change: https://android-review.googlesource.com/c/platform/external/perfetto/+/2995838 Change-Id: I0b07460266573958737d2f8055df34c5e55f2106 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-03-14Increase heap profiling trace duration am: f72898be3eandroid13-tests-devDaniele Di Proietto
Original change: https://android-review.googlesource.com/c/platform/external/perfetto/+/2995838 Change-Id: I0333874266277d590556036a6f5d691c66a805cd Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-03-11Increase heap profiling trace durationandroid12L-tests-devDaniele Di Proietto
These tests: 1A. Start an app. 1B. Start recording a heap profile on that app (in some tests the operations are reversed). (In some cases 1A and 1B are swapped) 2. The trace is recorded for 4 seconds. After 4 seconds, the tests read the trace and check for recorded memory allocations. On some particularly slow devices we've observed that the test app takes more than 4 seconds to start. Increasing the trace recording duration makes the test slower, but makes it work also on slow devices. Bug: 323332122 Merged-In: Ib3bdde1449d0e482e5428c1751381eae100e3536 Change-Id: Ib3bdde1449d0e482e5428c1751381eae100e3536 (cherry picked from commit 8fc000d37cce32a26661745b2ddcc1f7ddabc268)
2023-10-06RESTRICT AUTOMERGE: Disable TriggerCloneSnapshot test on Uandroid-vts-14.0_r3android-vts-14.0_r2android-cts-14.0_r3android-cts-14.0_r2Primiano Tucci
The proto field id for clone snapshot has been changed in U QPR1 to deal with bugs in the feature (fixed only in QPR). The test, however, is part of CTS which needs to work on all U releases. This CL disables the test on the android14-tests-dev branch and keeps it in main. Bug: 302438506 Bug: 296227911 Change-Id: Iee267f52cf3b9e5da678592fc8f01521e8f7d7b0
2023-07-24Fix duplicated `data` fieldHugo Drumond Jacob
While merging this from `android12L-test-dev` to `main`, the `data` field got duplicated. Merge the duplicated entries into a single one. Change-Id: Ie97857cf1d4a41fd479e100616b533265c807de8 Merged-In: Ie97857cf1d4a41fd479e100616b533265c807de8 Bug: 285215697 (cherry picked from commit 19e99ad003838ace452fba806e60c818e67d3366) (cherry picked from commit ee31a6e6c21bd44cc66a02a41116efc91341ad65)
2023-07-20test: Fix CTS tests on user builds.Daniele Di Proietto
CTS tests on user builds fail, because the `sched/sched_process_fork` event in not accessible (unlike on userdebug builds). Let's use sched/sched_switch instead. The exact event doesn't matter, we just need an event that can be successfully enabled. History of the test: * On android 12, the `PerfettoFtraceIntegrationTest` suite was happily included on CTS tests and was passing on user and userdebug build. * We mistakenly removed suite from CTS on android 13 with https://r.android.com/1952222, but it was kept in `perfetto_integrationtests` (which were only run on **userdebug**). * We added a new test to the suite in https://r.android.com/2027444. * I readded the `PerfettoFtraceIntegrationTest` in https://r.android.com/2612391 Tested by running: ``` atest CtsPerfettoTestCases:PerfettoFtraceIntegrationTest#ReportFtraceFailuresInStats -- --abi arm64-v8a ``` on a user master build. Bug: 288274277 Bug: 291679694 Bug: 289783494 Bug: 291870885 (cherry picked from https://android-review.googlesource.com/q/commit:d04c69d715d45a75c9ccc44e527b8951570eed10) Merged-In: Ifea07f718bbbd4917170604c3470475811e48b3b Change-Id: Ifea07f718bbbd4917170604c3470475811e48b3b (cherry picked from commit 11dc17dc6ad015caf8c3d208f318d5d6ec572a3e)
2023-07-19[automerger skipped] [DO NOT MERGE] Fix duplicated `data` field am: ↵Hugo Drumond Jacob
5c8d324994 -s ours am skip reason: subject contains skip directive Original change: https://android-review.googlesource.com/c/platform/external/perfetto/+/2665397 Change-Id: I56db9897a3f0089cf75b72f34ed16d86d782868a Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-07-19[DO NOT MERGE] Fix duplicated `data` fieldHugo Drumond Jacob
While merging this from `android12L-test-dev` to `main`, the `data` field got duplicated. Merge the duplicated entries into a single one. Change-Id: Ie97857cf1d4a41fd479e100616b533265c807de8 Merged-In: Ie97857cf1d4a41fd479e100616b533265c807de8 Bug: 285215697 (cherry picked from commit d4482a5a8d4b70722f8c573290661bfa6e85d368)
2023-07-19Temporarily enable traced for testing am: 98a1d0817c am: d410418f04sungchul.park
Original change: https://android-review.googlesource.com/c/platform/external/perfetto/+/2652679 Change-Id: I5446f4aae8906b74edb36d10d2713f5d23d9bcb6 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-07-19Temporarily enable traced for testing am: 98a1d0817csungchul.park
Original change: https://android-review.googlesource.com/c/platform/external/perfetto/+/2652679 Change-Id: I423fa2fdb2483ad4539042f346c24a8f03552097 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-07-19Temporarily enable traced for testingsungchul.park
The CDD doesn't enforce traced to be enabled (`persist.traced.enable`) by default in all device types. In fact, only handheld is required to have do to so. Originally, the test assumes that traced is enabled by default, which may not be true for all device types. Improve that by temporarily enabling traced if it's not enabled, run the tests and disable traces again if enabled by the test case. Bug: 285215697 Change-Id: I3e93e4b93a0349fe3d9f790525ae61a0f484bc97
2023-06-21protozero: implement string filtering as part of message filteringandroid14-devLalit Maganti
This CL introduces support for filtering strings in traces (i.e by redacting contents) using regexes. It also adds faster filtering primitives for atrace which is expected to be where this code is used the most. (cherry-picked from aosp/2629209) Bug: 283246642 Change-Id: Ie3624e4066bbd3d59fbde3225e5a368c18b46b18 Merged-In: Ie3624e4066bbd3d59fbde3225e5a368c18b46b18
2023-06-21protozero: add filtering bytecode v2 with support for string filteringLalit Maganti
This CL introduces a new bytecode v2 format which adds a new opcode for filtering strings in protos. This CL does not implement the actual filtering logic yet, instead making the field a noop at the moment. (cherry-picked from aosp/2616329) Bug: 283246642 Change-Id: I4e1dfbeafa7b7728faf3dc063f868c9a36f1672a Merged-In: I4e1dfbeafa7b7728faf3dc063f868c9a36f1672a
2023-06-21protozero: add nested_msg_field flag for in filtering bytecode parsingLalit Maganti
This is a pure refactor CL which makes it easier to reason about the introduction of string rewriting. (cherry-picked from aosp/2615453) Bug: 283246642 Change-Id: I405d2cff15c738e76c51291a58fdc95553315a22 Merged-In: I405d2cff15c738e76c51291a58fdc95553315a22
2023-06-21protozero: reject end of message handling edge case in filteringLalit Maganti
This could cause an invalid bytecode to silently be accepted as we were not checking correctly for the end of message. (cherry-picked from aosp/2615174) Bug: 283246642 Change-Id: I3d03f92f5a3ee36c680c7eae6b5f020baa03eb90 Merged-In: I3d03f92f5a3ee36c680c7eae6b5f020baa03eb90
2023-06-14Merge "traced: allow cross-session cloning for bugreports" into udc-devTreehugger Robot
2023-06-13Merge "traced: preserve UUID LSB when cloning a session" into udc-devPrimiano Tucci
2023-06-13traced: preserve UUID LSB when cloning a sessionPrimiano Tucci
The LSB is used to correlate tracing sessions with statsd subscriptions. Retain the LSB to avoid breaking downstream pipelines that depend on this. Bug: b/260112703 Bug: 287071990 Test: TracingServiceImplTest.CloneSession (cherry picked from https://android-review.googlesource.com/q/commit:8755774a3fbe4e8c664a6436eb4fd9ea5e34a297) Merged-In: I4c512701143a21ac1b01a2f785ebe005e9983556 Change-Id: I4c512701143a21ac1b01a2f785ebe005e9983556
2023-06-13traced: allow cross-session cloning for bugreportsPrimiano Tucci
Prior changed introduced generalized support for CloneSession and rewrote the --save-for-bugreport feature on top of that. Unfortunately we didn't notice that the CloneSession feature is very strict on UID checking, enforcing that source and target consumer UID match. This is good in general but not desirable (And a regression) for the case of bugreports, where the two uids differ. In this case bugreport_score acts as an "I am fine exporting this trace to other uids". Bug: 286908237 Bug: 260112703 (cherry picked from https://android-review.googlesource.com/q/commit:5457722190e8cad7dddbedc71b8957ab45402a6c) Merged-In: I99bd22aef0bfa402cb24559b8515c5bdf0b48ba9 Change-Id: I99bd22aef0bfa402cb24559b8515c5bdf0b48ba9
2023-06-12Add some end to end tests to the CTS test suiteDaniele Di Proietto
There are a bunch of end to end tests in test:integrationtests (android_integrationtest.cc, cmdline_integrationtest.cc, ftrace_integrationtest.cc, traced_integrationtest.cc). These tests are linked in perfetto_integrationtests, which is run in CI on a couple of devices. I think the intention in the code base was for these tests to be included in CtsPerfettoTestCases. All devices have to pass CTS, so that gives us a better guarantee that perfetto is working. Unfortunately, our build files did not include these tests correctly into the CtsPerfettoTestCases. Before this commit GN: ``` //test/cts: static_library("perfetto_cts_deps") { deps = [ "test:integrationtests" ], } //test: source_set("integrationtests") { sources = [ "android_integrationtest.cc", "cmdline_integrationtest.cc", "ftrace_integrationtest.cc", "traced_integrationtest.cc", ] } ``` BP: ``` //test/cts/Android.bp (NOT autogenerated) cc_test { name: "CtsPerfettoTestCases" static_libs: ["perfetto_cts_deps"] } //Android.bp (autogenerated from GN) cc_library_static { name: "perfetto_cts_deps" srcs: [ "perfetto_test_integrationtests" ] } filegroup { name: "perfetto_test_integrationtests" srcs: [ "android_integrationtest.cc", "cmdline_integrationtest.cc", "ftrace_integrationtest.cc", "traced_integrationtest.cc", ] } ``` The files in the filegroup `perfetto_test_integrationtests` were included into the cc_library_static `perfetto_cts_deps`. When CtsPerfettoTestCases links `perfetto_cts_deps`, it doesn't include all the objects, it includes only the one that strictly needs and it excludes the one that only register initializers (i.e. there's no --whole-archive). This commit fixes the problem by listing the _integrationtest.cc explicitly in `CtsPerfettoTestCases`. In order to do that, this commit: * Renames end_to_end_integrationtest_cts.cc to producer_to_consumer_integrationtest_cts.cc so that the name end_to_end can be reused later. * Renames the source_set //test:integrationtests to perfetto_end_to_end_integrationtests, so that it can be exported to Android.bp (exported targets are not prefixed with their path). Before this change CtsPerfettoTestCases was taking ~2 minutes and 30 seconds on my redfin. After this change CtsPerfettoTestCases is taking 2 minutex and 40 seconds, so this commit also updates the timeout in the XML. This is the diff between the old CTS test list and the new one: ``` HeapprofdJavaCtsTest. DebuggableAppRuntime ProfileableAppRuntime ReleaseAppRuntime DebuggableAppRuntimeByPid DebuggableAppOom ProfileableAppOom ReleaseAppOom DebuggableAppOomNotSelected HeapprofdCtsTest. DebuggableAppRuntime DebuggableAppStartup ProfileableAppRuntime ProfileableAppStartup ReleaseAppRuntime ReleaseAppStartup NonProfileableAppRuntime NonProfileableAppStartup JavaHeapRuntime JavaHeapStartup ProfilePlatformProcess TracedPerfCtsTest. SystemWideDebuggableApp SystemWideProfileableApp SystemWideNonProfileableApp SystemWideReleaseApp ProfilePlatformProcess PerfettoDeviceFeatureTest. TestMaxCpusForAtraceChmod PerfettoCtsTest. TestProducerActivity TestProducerService TestProducerIsolatedService +PerfettoAndroidIntegrationTest. + TestKmemActivity + TestBatteryTracing +PerfettoCmdlineTest. + InvalidCases + Version + TxtConfig + SimpleConfig + DetachAndAttach + StartTracingTrigger + StopTracingTrigger + NoDataNoFileWithoutTrigger + StopTracingTriggerFromConfig + TriggerFromConfigStopsFileOpening + Query + CmdTriggerWithUploadFlag + TriggerCloneSnapshot + SaveForBugreport + SaveForBugreport_WriteIntoFile + Clone + UnavailableBugreportLeavesNoEmptyFiles + DISABLED_SaveForBugreport_Triggers +PerfettoFtraceIntegrationTest. + TestFtraceProducer + TestFtraceFlush + KernelAddressSymbolization + ReportFtraceFailuresInStats +PerfettoTracedIntegrationTest. + TestFakeProducer + VeryLargePackets + UnresponsiveProducer + DetachAndReattach + ReattachFailsAfterTimeout + TestProducerProvidedSMB + QueryServiceStateLargeResponse + TraceFilterLargePackets ``` Bug:286867751 (cherry picked from https://android-review.googlesource.com/q/commit:5567443fceff3fe08c16c3241cdd7ec96e3c4297) Merged-In: Idcd04d6239f276b95abeca09ebb0891d5cf98a3f Change-Id: Idcd04d6239f276b95abeca09ebb0891d5cf98a3f
2023-05-31Rename datasource statsd_binder -> statsdHector Dearman
(cherry picked from https://android-review.googlesource.com/q/commit:011149e55d3e2184d1c5256493ba422f7cce3282) Merged-In: Ia692949743526f36182a0bd272dd651bb5dd8ac4 Change-Id: Ia692949743526f36182a0bd272dd651bb5dd8ac4 Bug: 260112703
2023-05-30Make trace smaller in CtsPerfettoReporterTestCasesDaniele Di Proietto
The reporter test only works with a trace that's smaller than 1Kb. Recent additions to the tracing service (chunk usage stats) caused the final trace size to be bigger than that on some devices or builds (the device and build names are included in the trace). This commit fixes the problem by disabling a bunch of tracing service feature. This reduces the tracing size on redfin from 1020 bytes to 400 bytes. Bug: 282508742 (cherry picked from https://android-review.googlesource.com/q/commit:f3935233188da29f7f772f7685cbc4d1e014f06b) Merged-In: I6c17948e7983828eb4f11bf760f71d8055b777ba Change-Id: I6c17948e7983828eb4f11bf760f71d8055b777ba
2023-05-25[automerger skipped] ftrace: Avoid crashing if format doesn't match ↵Daniele Di Proietto
expectations am: 8c5b81d9ac -s ours am skip reason: Merged-In I20769f4ce47a2af4c90b87e4bfb709468b4568cf with SHA-1 d0b6ef14f3 is already in history Original change: https://googleplex-android-review.googlesource.com/c/platform/external/perfetto/+/23410770 Change-Id: I4bcb8f7512cad7ec1a007c04f343d01bbb61e9d4 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-05-24ftrace: Avoid crashing if format doesn't match expectationsDaniele Di Proietto
Kernel commit 0b04d4c0542e("f2fs: Fix f2fs_truncate_partial_nodes ftrace event") changed the format of an event in a way that causes perfetto to hit a PERFETTO_FATAL. The PERFETTO_FATAL was probably not intentional there, it was added (probably by mistake) by 6db99a9ca272("Add PERFETTO_DFATAL."). In any case, perfetto shouldn't crash for an event it doesn't understand. Bug: 281660544 (cherry picked from https://android-review.googlesource.com/q/commit:f1ee130d2d4fa37f3c57b4f05019d664ae6523a5) Merged-In: I20769f4ce47a2af4c90b87e4bfb709468b4568cf Change-Id: I20769f4ce47a2af4c90b87e4bfb709468b4568cf
2023-05-17Merge commit 'bad11ba2234a116bafcce7910d8bad375584c5d1' into HEADDaniele Di Proietto
Bug: 260112703 Bug: 278884624 Change-Id: I0d7fdad29902e683a40bdade9395da8b0a759b88
2023-05-17Merge "Minimize changes between aosp and internal for src/android_internal"Hector Dearman
2023-05-17Merge "Add lazy-loading tree node component"Steve Golton
2023-05-17Add lazy-loading tree node componentSteve Golton
Change-Id: Idd713676f7beda9c3fb971c07f35a86d1ff0d8a0
2023-05-17Minimize changes between aosp and internal for src/android_internalPrimiano Tucci
Follows ag/23263017. This brings internal<>AOSP in a state where the only difference is statsd.cc, empty in AOSP, full content in udc-dev and int-master. Bug: 271926639 Change-Id: I181f3041454de5dd43ad8666a4fe1c6f6d2adcdd
2023-05-16Merge "test: Ignore guardrail in E2E test"Treehugger Robot
2023-05-16Merge "[metrics] Add pid and tids to android_monitor_contention metric"Zimuzo Ezeozue
2023-05-16test: Ignore guardrail in E2E testPrimiano Tucci
Otherwise test retries will hit the guardrails and fail. Bug: 282508742 Change-Id: I76b806e119267c5e9c133775b9ac4576c3975ae1
2023-05-16Reduce diff between upstream and downstream attempt 3Hector Dearman
Bug: 271926639 Change-Id: I800955331824d55d25de5ffae720c03cc93e12f4
2023-05-16[metrics] Add pid and tids to android_monitor_contention metricZim
This will add more context to the monitor contention metric and allow joining with other CUJ metrics to understand the impact of monitor contention on various CUJs Test: tools/diff_test_trace_processor.py out/android/trace_processor_shell --name-filter '.*monitor.*' Change-Id: I83dabd7aa3f2cb3cce26db16c0bcd148d4a471a6
2023-05-16Merge "tp: fix sqlstats SQL registration name"Lalit Maganti
2023-05-16Merge "tp: fix compile errors in G3"Lalit Maganti
2023-05-16Merge "protozero: Avoid DCHECK when parsing malformed packet repeated"Treehugger Robot
2023-05-16Merge "Project import generated by Copybara."Joseph Koshy
2023-05-15Merge changes I0c58b59d,Iaa57d6d5Ryan Zuklie
* changes: Add a template metric for network activity query. Fix battery stats function name and consistency
2023-05-15tp: fix compile errors in G3Lalit Maganti
Change-Id: Ia3a99f226d018aad35ba3a6db103c97188062d5b
2023-05-15Merge "Add an explicit instruction to enable chrome flag for system Perfetto ↵Alexander Timin
integration "
2023-05-15tp: fix sqlstats SQL registration nameLalit Maganti
Change-Id: I8d3f361eb560a68abb622c47e17e7899b18ff891 Fixes: 282723377
2023-05-15Merge "ftrace: Ignore f2fs/f2fs_truncate_partial_nodes.nid field"Daniele Di Proietto
2023-05-15Merge "tracing_service_impl: Keep compression in cloned and bugreport traces"Daniele Di Proietto
2023-05-15Merge "Heuristically match isolated processes package"Ioannis Ilkos
2023-05-15Add an explicit instruction to enable chrome flag for system Perfetto ↵Alexander Timin
integration  Change-Id: I890d42cff356df2b54c1ecd8d495f85beeba1cb1
2023-05-15Merge "traced_probes: Put all statsd atoms into a single batch"Hector Dearman
2023-05-15Heuristically match isolated processes packageIoannis Ilkos
Bug: 281694530 Change-Id: Ieb5d4fd580f51ad4241dfba6a5d54ca90b5c64aa
2023-05-15tp: fix UI compileLalit Maganti
Change-Id: Ieedd86509a1cca6e4b4f7041435ec97e4e796147