diff options
author | Jeff Sharkey <jsharkey@android.com> | 2016-04-08 21:14:08 -0600 |
---|---|---|
committer | Jeff Sharkey <jsharkey@android.com> | 2016-04-09 17:25:06 -0600 |
commit | d4041db120d7500e73e0132b03dfeffb84d402f5 (patch) | |
tree | 2dac20c7efc5d0c7c268e3c1fee3bb26d138ddf9 /rs/java/android/renderscript/ScriptGroup.java | |
parent | 8ed9ece93dca5c7266ca7d9c5fabe7c9a6b214e7 (diff) |
More freezing of apps when doing surgery.
We're still hearing rare reports of apps running while the system
is trying to do surgery on app code/data. To fix this once and for
all, start guarding all PackageManager critical sections by freezing
and then killing the app before doing surgery.
This is done by introducing a new PackageFreezer class which can be
used in try-with-resources blocks. It also handles child packages
uniformly, and it uses CloseGuard to defensively un-freeze packages
if a caller leaks without closing.
The set of frozen packages is now maintained outside of PackageSetting
to support newly installed packages. Add docs for the various locks
and method syntax conventions, including the new "LIF" syntax which
indicates the caller is responsible for freezing the package being
worked on.
Bug: 27698554
Change-Id: I64c4c48123060ccb4d4c50c2fbf3ef223c01e659
Diffstat (limited to 'rs/java/android/renderscript/ScriptGroup.java')
0 files changed, 0 insertions, 0 deletions