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
Loading
Please register or sign in to comment