diff options
| author | Todd Kjos <tkjos@google.com> | 2017-04-21 14:32:11 -0700 |
|---|---|---|
| committer | Todd Kjos <tkjos@google.com> | 2017-04-25 23:58:52 +0000 |
| commit | 1d76b699bf8698de858f6aab60d4ae12ded0e459 (patch) | |
| tree | 060b60cb4121387aaa5ae9b418deb07c3d198803 /kernel/trace/trace_functions_graph.c | |
| parent | f01f974e16d740518938c311712dffbf46a1103f (diff) | |
binder: protect against stale pointers in print_binder_transaction
When printing transactions there were several race conditions
that could cause a stale pointer to be deferenced. Fixed by
reading the pointer once and using it if valid (which is
safe). The transaction buffer also needed protection via proc
lock, so it is only printed if we are holding the correct lock.
Also adds protection against malicious user code from creating
two threads to free the same buffer at the same time.
Bug: 36650912
Test: tested manually
Change-Id: I78240f99cc1a070d70a841c0d84d4306e2fd528d
Signed-off-by: Todd Kjos <tkjos@google.com>
Diffstat (limited to 'kernel/trace/trace_functions_graph.c')
0 files changed, 0 insertions, 0 deletions
