| Age | Commit message (Collapse) | Author |
|
Now we can show a sample path and incoming references to unreachable
objects, which can help to better understand where the objects are
coming from.
Test: atest --host ahat-tests
Change-Id: I616eff403bc46841514cca4e4000a669e0e30802
|
|
Often times byte[] instances are backing for string values. Show the
string contents with the byte[] instance directly, so it's much easier
to see what the byte[] instance is for.
Test: java -jar out/host/linux-x86/framework/ahat-tests.jar
Change-Id: If6eaaa7067c49cec4e6de509c0f274e230f12dba
|
|
If a registered native allocation is cleaned explicitly via the
thunk provided by RegisterNativeAllocation, but that thunk hasn't
yet been GC'ed, the associated heap dump currently reports that the
native allocation is live. Fix this by checking the cleaner's liveliness
in the associated linked list.
This aligns with Perfetto behavior for native registration allocation
tracking.
Test: atest ahat-tests --host
Bug: 235395968
Change-Id: Icc275de7b45e176846cf5932895692ae6eb8e166
|
|
Change-Id: Icd092da208e65abd1e83d5e22ce458d49cb78757
|
|
For all instances of android.os.Binder, try to annotate them by
retrieving their descriptor. If the instance is a also (sub)class of
'descriptor$Stub', mark it as a binder service. Otherwise, mark it as
a binder token.
Example:
android.server.wm.Session@1aa85368 binder service (android.view.IWindowSession)
Bug: 114365505
Test: ahat-tests (including new tests) passes, visual inspection
Change-Id: I7343467be5b745960c6e87c850c4125945de2f85
|
|
Example: android.os.BinderProxy@1ae2d838 for android.app.job.IJobScheduler
Test: Added fake Binder stub and proxy classes, verified that a class ending with $Stub$Proxy and holding a reference to a BinderProxy object is marked as the BinderProxy interface
Bug:114363695
Change-Id: I19dd24cafbb4c022dda583408f02cc2fae362825
|
|
Instead of grouping all the different kinds of references into a single
category of "weak".
Bug: 79131879
Test: m ahat-test
Change-Id: I800f70b7f10386510e20d9d7b8a76069ddd38982
|
|
Configure proguard to preserve stack traces in the test-dump so we can
properly test ahat's deobfuscation of stack traces.
Fix a bug in proguard deobfuscation of file names. Specifically, we
should always compute the file name based on the class associated with a
stack frame, regardless of whether or not the method has been
obfuscated.
Restructure test-dump program to test more cases of stack frame
deobfuscation.
Test: m ahat-test, with expanded proguard deobufscation test.
Change-Id: Idbb564147c6aea6b9c2091612ecf17c01070d5ac
|