Files
frameworks_base/tools
Andreas Gampe aeb6fce5b3 Framework: Lock inversion checker
Add an agent-based lock inversion checker. The agent will dynamically
rewrite bytecode to inject calls to LockHook, which runs a checker
on these.

Implement a simple on-thread checker that keeps a per-thread stack
of locks and a global map of lock ordering. As-is, transitivity of
checks is not guaranteed, but should be captured in most practical
cases.

To run a process with the lock checker, start the process with the
agent. The helper script start_with_lockagent.sh can be used for this:

  adb shell setprop wrap.pkg-name script start_with_lockagent

Bug: 124744938
Test: manual
Change-Id: Idd9a7066a5b8cb8c0de2e995f08759c98d9473e1
2019-04-11 15:48:26 -07:00
..
2018-12-03 10:58:42 -07:00
2019-03-26 09:59:52 -06:00
2019-03-25 14:31:06 -07:00
2019-01-24 10:02:00 +00:00
…
2018-08-08 09:52:51 -07:00