diff options
author | Lokesh Gidra <lokeshgidra@google.com> | 2018-10-10 22:40:02 -0700 |
---|---|---|
committer | Lokesh Gidra <lokeshgidra@google.com> | 2018-10-11 11:27:26 -0700 |
commit | 16d82a23680e6852f3cda93f6cde6e1f0a037181 (patch) | |
tree | 63fe9186d3a585884b97eca4c72bf485ab816aca /compiler/optimizing/graph_visualizer.cc | |
parent | 9bb9723258b5a2863e233a9cd61fc6fe3eb45d9c (diff) |
Don't mark new non-moving objs in young GC
During a young GC, there is a small window during which we allowed
non-moving objects on the allocation stack to be pushed to marking
stack (and thereby setting the corresponding live-bit) while
done_scanning_ is still false. If a heapdump is taken after such a
GC cycle, it leads to visiting such objects twice.
This change fixes the problem by ensuring that objects on allocation
stack are not marked in a GC cycle, as expected.
Test: art/test/testrunner/testrunner.py --target
Test: Flash device, adb shell am dumpheap <gms|systemui|system_server>
Bug: 117426281
Change-Id: Icbcff2596241f1f87d9cebea859de3dd10041036
Diffstat (limited to 'compiler/optimizing/graph_visualizer.cc')
0 files changed, 0 insertions, 0 deletions