RFR: 8256811: Delayed/missed jdwp class unloading events [v16]

Zhengyu Gu zgu at openjdk.org
Tue Jul 12 22:03:01 UTC 2022


On Tue, 12 Jul 2022 19:27:16 GMT, Chris Plummer <cjplummer at openjdk.org> wrote:

> I haven't had a chance to review your change or to understand the sync issues, but I did test them out and it seems to have gotten rid of the issue. However, there is new assert that turned up once in 75 runs:
> 
> ```
> #  Internal Error (/<snip>/workspace/open/src/hotspot/share/runtime/interfaceSupport.inline.hpp:182), pid=3626508, tid=3626546
> #  assert(!thread->owns_locks()) failed: must release all locks when leaving VM
> 
> V  [libjvm.so+0x138a807]  JvmtiJavaThreadEventTransition::JvmtiJavaThreadEventTransition(JavaThread*)+0x157
> V  [libjvm.so+0x137eee5]  JvmtiExport::post_object_free(JvmtiEnv*, GrowableArray<long>*)+0xa5
> V  [libjvm.so+0x13b571d]  JvmtiTagMap::post_dead_objects(GrowableArray<long>*)+0x5d
> V  [libjvm.so+0x13b59dd]  JvmtiTagMap::iterate_over_heap(jvmtiHeapObjectFilter, Klass*, jvmtiIterationControl (*)(long, long, long*, void*), void const*)+0x23d
> V  [libjvm.so+0x134d721]  JvmtiEnv::IterateOverInstancesOfClass(oop, jvmtiHeapObjectFilter, jvmtiIterationControl (*)(long, long, long*, void*), void const*)+0xd1
> V  [libjvm.so+0x12dd823]  jvmti_IterateOverInstancesOfClass+0x1d3
> C  [libap04t001.so+0xd1c6]  Java_nsk_jvmti_scenarios_allocation_AP04_ap04t001_runIterateOverInstancesOfClass+0xa6
> j  nsk.jvmti.scenarios.allocation.AP04.ap04t001.runIterateOverInstancesOfClass()V+0
> j  nsk.jvmti.scenarios.allocation.AP04.ap04t001ClassIterator.runIteration()V+0
> j  nsk.jvmti.scenarios.allocation.AP04.ap04t001Thread.run()V+30
> v  ~StubRoutines::call_stub 0x00007f55a0528d47
> V  [libjvm.so+0x1036784]  JavaCalls::call_helper(JavaValue*, methodHandle const&, JavaCallArguments*, JavaThread*)+0x514
> V  [libjvm.so+0x1037024]  JavaCalls::call_virtual(JavaValue*, Klass*, Symbol*, Symbol*, JavaCallArguments*, JavaThread*)+0x4b4
> V  [libjvm.so+0x1037497]  JavaCalls::call_virtual(JavaValue*, Handle, Klass*, Symbol*, Symbol*, JavaThread*)+0x77
> V  [libjvm.so+0x11c731b]  thread_entry(JavaThread*, JavaThread*)+0x12b
> V  [libjvm.so+0x106d948]  JavaThread::thread_main_inner()+0x238
> V  [libjvm.so+0x1a8cbd0]  Thread::call_run()+0x100
> V  [libjvm.so+0x174fea4]  thread_native_entry(Thread*)+0x104
> ```

Thanks for running the test. I missed a spot. Fixed.

-------------

PR: https://git.openjdk.org/jdk/pull/9168


More information about the serviceability-dev mailing list