From a75e5892fba6d0208f33e9ab8e19e732daf94996 Mon Sep 17 00:00:00 2001 From: Alex Light Date: Mon, 11 Mar 2019 15:49:40 +0000 Subject: 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 --- openjdkjvmti/OpenjdkJvmTi.cc | 15 +-------------- 1 file changed, 1 insertion(+), 14 deletions(-) (limited to 'openjdkjvmti/OpenjdkJvmTi.cc') 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); } -- cgit v1.2.3-59-g8ed1b