The ServiceThread cleaning used a stale ObjectFree state when calling remove_dead_entries, because another thread had concurrently set is_enabled to false. Add a lock around setting/resetting the lock event state and retest the state under a lock. Ran the test 100s of time without failure, where otherwise it fails very quickly. Tested with tier2,3 and running tiers 4,5,6 in progress. Thanks to Kim for his previous feedback.
------------- Commit messages: - 8256830: misc tests failed with "assert(env->is_enabled(JVMTI_EVENT_OBJECT_FREE)) failed: checking" Changes: https://git.openjdk.java.net/jdk/pull/1439/files Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=1439&range=00 Issue: https://bugs.openjdk.java.net/browse/JDK-8256830 Stats: 25 lines in 3 files changed: 23 ins; 1 del; 1 mod Patch: https://git.openjdk.java.net/jdk/pull/1439.diff Fetch: git fetch https://git.openjdk.java.net/jdk pull/1439/head:pull/1439 PR: https://git.openjdk.java.net/jdk/pull/1439