summaryrefslogtreecommitdiff
path: root/test/968-default-partial-compile-gen/util-src/generate_java.py
diff options
context:
space:
mode:
author Mythri Alle <mythria@google.com> 2022-10-12 16:19:24 +0000
committer Mythri Alle <mythria@google.com> 2022-10-19 08:42:26 +0000
commit798f53c10c095000ccad0b1b6fd4735fd6b30d1d (patch)
tree373466cb4c4e3b767f0318647b9b092041af3ccd /test/968-default-partial-compile-gen/util-src/generate_java.py
parent750e3b6ca054a9892887a73f2f4da8ea9597c430 (diff)
Don't run thread callbacks for runtime threads and shutdown thread
libjdwp tests need an event handler lock to process any events. When processing certain events like removing the last breakpoint we have to update entrypoints of the methods while holding the event handler lock. Deopt manager requires to enter GCCriticalSection when updating entrypoints. This might prevent us from attaching any threads since thread callbacks cannot finish. This is generally not an issue except for heap worker threads and shutdown thread. In these cases we can create a mutual wait: DeoptManager blocked on ongoing GC while holding event handler lock GC waiting on deoptmanager to release event handler lock to attach threads. This CL avoids calling thread callbacks for runtime threads (heap / JIT worker threads) and shutdown thread. This is a temporary fix till we can avoid using GCCriticalSection in deopt manager. Bug: 251163712 Bug: 70838465 Test: ART_USE_READ_BARRIER=false run-libjdwp-test.py ObjectReference_DisableCollectionTest Change-Id: I2f3cb7f0227f88924c299c7e983abb5dc253425d
Diffstat (limited to 'test/968-default-partial-compile-gen/util-src/generate_java.py')
0 files changed, 0 insertions, 0 deletions