Skip to content
Commit 2fd993fd authored by Winson's avatar Winson
Browse files

Remove ComputerTracker and fix consistency in PackageManagerService

Effectively removes the lock and trampoline Computer wrappers as
we enforce that snapshots are always available now.

Also isolates IPackageManager and PackageManagerInternal from
PackageManagerService to prevent misuse of the APIs. The separated
base classes have access to a snapshot method which is then proxied
to, or used to call into PMS.

This makes it impossible for a caller using PMS directly to
accidentally call into one of these other API surfaces that won't
use the caller's provided snapshot, causing inconsistency problems.

Also removes live locking annotations and the related infrastructure
since we just assume that doesn't matter anymore.

Also migrates some _Helper logic to take/pass snapshots to match the
PMS methods, but not all of the helper logic migated to consistent
snapshots. That will be done in a follow up.

With this, all known extra overhead has been removed and metrics
should return to normal.

Bug: 215403184

Test: presubmit

Change-Id: I7e977f600f49b070c3a539901cc06d523fb7517a
parent 4359c9d3
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment