summaryrefslogtreecommitdiff
path: root/openjdkjvmti/OpenjdkJvmTi.cc
diff options
context:
space:
mode:
author Alex Light <allight@google.com> 2019-03-11 15:49:40 +0000
committer Treehugger Robot <treehugger-gerrit@google.com> 2019-03-11 21:59:44 +0000
commita75e5892fba6d0208f33e9ab8e19e732daf94996 (patch)
tree3daff8c3ce1608bacba7358711ccf9bd61c0bb05 /openjdkjvmti/OpenjdkJvmTi.cc
parentdd83a40a3c4fea0d917577de96742900a61ab548 (diff)
Revert^2 "Remove Global deopt requirement for several jvmti events"
This reverts commit ad344b6a14feba90a06a205760e9bc766c56cab0. Jit-on-first-use would cause the runtime to skip sending FramePop events for exceptions in some circumstances due to longjmp-ing over the frames. This requires forcing jit off from the first instant a thread can get frame popped events, which is unfortunate. Reason for revert: Fixed issue causing 1925 to fail on jit-on-first-use and redefine-stress Test: ./test.py --host Test: ./art/test/testrunner/run_build_test_target.py -j50 art-jit-on-first-use Change-Id: I6ec2a799db1041262a055be10e1af1faece6f2fc
Diffstat (limited to 'openjdkjvmti/OpenjdkJvmTi.cc')
-rw-r--r--openjdkjvmti/OpenjdkJvmTi.cc15
1 files changed, 1 insertions, 14 deletions
diff --git a/openjdkjvmti/OpenjdkJvmTi.cc b/openjdkjvmti/OpenjdkJvmTi.cc
index 7a2b638fd9..39e49d7071 100644
--- a/openjdkjvmti/OpenjdkJvmTi.cc
+++ b/openjdkjvmti/OpenjdkJvmTi.cc
@@ -1053,22 +1053,9 @@ class JvmtiFunctions {
jthread event_thread,
...) {
ENSURE_VALID_ENV(env);
- art::Thread* art_thread = nullptr;
- if (event_thread != nullptr) {
- // TODO The locking around this call is less then what we really want.
- art::ScopedObjectAccess soa(art::Thread::Current());
- art::MutexLock mu(soa.Self(), *art::Locks::thread_list_lock_);
- jvmtiError err = ERR(INTERNAL);
- if (!ThreadUtil::GetAliveNativeThread(event_thread, soa, &art_thread, &err)) {
- return err;
- } else if (art_thread->IsStillStarting()) {
- return ERR(THREAD_NOT_ALIVE);
- }
- }
-
ArtJvmTiEnv* art_env = ArtJvmTiEnv::AsArtJvmTiEnv(env);
return gEventHandler->SetEvent(art_env,
- art_thread,
+ event_thread,
GetArtJvmtiEvent(art_env, event_type),
mode);
}