diff options
| author | 2024-05-29 18:31:32 +0000 | |
|---|---|---|
| committer | 2024-06-03 20:43:54 +0000 | |
| commit | 2618484c8190ba61b4afa47ba0aa6425685df1e3 (patch) | |
| tree | eae53e4c8fb3899734f116c615ad248c2fd652e2 | |
| parent | 2a4e99a798cc69944f64d54b81aee987fbea45d6 (diff) | |
Added trace event to broadcastIntentWithFeature.
Test: follow the steps below to test
1. Collect a boot trace using the trace config from company/teams/auto/embedded/framework/performance/tools/src/perfetto_trace_config.textproto.
2. Open the trace in Perfetto and query for a slice name with 'broadcastIntent' using
SELECT * FROM slice WHERE name glob '%broadcastIntent:%';
Change-Id: Idce039d2b055f08a710e8f47ad90348cd9537b3a
| -rw-r--r-- | services/core/java/com/android/server/am/ActivityManagerService.java | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/services/core/java/com/android/server/am/ActivityManagerService.java b/services/core/java/com/android/server/am/ActivityManagerService.java index 11e4a03e44a4..954dbdcce104 100644 --- a/services/core/java/com/android/server/am/ActivityManagerService.java +++ b/services/core/java/com/android/server/am/ActivityManagerService.java @@ -15770,6 +15770,7 @@ public class ActivityManagerService extends IActivityManager.Stub String[] excludedPackages, int appOp, Bundle bOptions, boolean serialized, boolean sticky, int userId) { enforceNotIsolatedCaller("broadcastIntent"); + synchronized(this) { intent = verifyBroadcastLocked(intent); @@ -15783,6 +15784,12 @@ public class ActivityManagerService extends IActivityManager.Stub // Permission regimes around sender-supplied broadcast options. enforceBroadcastOptionPermissionsInternal(bOptions, callingUid); + final ComponentName cn = intent.getComponent(); + + Trace.traceBegin( + Trace.TRACE_TAG_ACTIVITY_MANAGER, + "broadcastIntent:" + (cn != null ? cn.toString() : intent.getAction())); + final long origId = Binder.clearCallingIdentity(); try { return broadcastIntentLocked(callerApp, @@ -15793,6 +15800,7 @@ public class ActivityManagerService extends IActivityManager.Stub callingPid, userId, BackgroundStartPrivileges.NONE, null, null); } finally { Binder.restoreCallingIdentity(origId); + Trace.traceEnd(Trace.TRACE_TAG_ACTIVITY_MANAGER); } } } |