summaryrefslogtreecommitdiff
path: root/compiler/optimizing/code_generator_utils.h
diff options
context:
space:
mode:
authorIvan Maidanski <i.maidanski@samsung.com>2018-05-14 13:50:48 +0300
committerMathieu Chartier <mathieuc@google.com>2018-06-05 19:04:14 +0000
commit2b69b9c65730638dd67d4376a7aee05a37e41198 (patch)
treee4bdff5a4697cf77d550a3c4ecbbddbb1af1a916 /compiler/optimizing/code_generator_utils.h
parent197f1ef6f4f2411d011d7e8f696775c3fbcffd86 (diff)
Fix deadlock between ConcurrentCopying and thread holding dex_lock exclusively
Similar to the issue addressed by https://android-review.googlesource.com/628465, we observe a deadlock between - a thread executing ConcurrentCopying::RevokeThreadLocalMarkStacks which has disabled weak references access and waiting for check_point barrier; - a thread which had acquired the mutator lock exclusively and was blocking on a condition variable regarding weak references access; and - a thread which cannot execute the checkpoint until it acquires the dex_lock. This change prevents garbage collection from occurring when dex_lock is held exclusively. Bug: 109720594 Test: m test-art-host Change-Id: I7a7e8e20aada4a9fad344b2f2f45a233639cda14
Diffstat (limited to 'compiler/optimizing/code_generator_utils.h')
0 files changed, 0 insertions, 0 deletions