Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8213209

[REDO] Allow Klass::_subklass and _next_sibling to have unloaded classes

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: P2 P2
    • 12
    • 12
    • hotspot
    • None
    • b23
    • Verified


      Adding the Compile_lock in InstanceKlass::verify() for RFE JDK-8212958 can deadlock the VMThread:

      Thread 9 (Thread 0x7f0e875fd700 (LWP 17592)):
      #0 0x00007f0ec3b7c6d5 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
      #1 0x00007f0ec28779cb in os::PlatformEvent::park() () from /scratch/opt/mach5/mesos/work_dir/jib-master/install/jdk12-jdk.742/linux-x64-debug.jdk/jdk-12/fastdebug/lib/server/libjvm.so
      #2 0x00007f0ec27c3620 in Monitor::ILock(Thread*) () from /scratch/opt/mach5/mesos/work_dir/jib-master/install/jdk12-jdk.742/linux-x64-debug.jdk/jdk-12/fastdebug/lib/server/libjvm.so
      #3 0x00007f0ec27c705e in Monitor::lock(Thread*) () from /scratch/opt/mach5/mesos/work_dir/jib-master/install/jdk12-jdk.742/linux-x64-debug.jdk/jdk-12/fastdebug/lib/server/libjvm.so
      #4 0x00007f0ec2226403 in InstanceKlass::verify_on(outputStream*) () from /scratch/opt/mach5/mesos/work_dir/jib-master/install/jdk12-jdk.742/linux-x64-debug.jdk/jdk-12/fastdebug/lib/server/libjvm.so
      #5 0x00007f0ec1fc3e26 in DictionaryEntry::verify() () from /scratch/opt/mach5/mesos/work_dir/jib-master/install/jdk12-jdk.742/linux-x64-debug.jdk/jdk-12/fastdebug/lib/server/libjvm.so
      #6 0x00007f0ec2194713 in void BasicHashtable<(MemoryType)1>::verify_table<DictionaryEntry>(char const*) () from /scratch/opt/mach5/mesos/work_dir/jib-master/install/jdk12-jdk.742/linux-x64-debug.jdk/jdk-12/fastdebug/lib/server/libjvm.so
      #7 0x00007f0ec1fc3fdb in Dictionary::verify() () from /scratch/opt/mach5/mesos/work_dir/jib-master/install/jdk12-jdk.742/linux-x64-debug.jdk/jdk-12/fastdebug/lib/server/libjvm.so
      #8 0x00007f0ec1d5e60d in ClassLoaderDataGraph::verify_dictionary() () from /scratch/opt/mach5/mesos/work_dir/jib-master/install/jdk12-jdk.742/linux-x64-debug.jdk/jdk-12/fastdebug/lib/server/libjvm.so
      #9 0x00007f0ec2b02e9c in SystemDictionary::verify() () from /scratch/opt/mach5/mesos/work_dir/jib-master/install/jdk12-jdk.742/linux-x64-debug.jdk/jdk-12/fastdebug/lib/server/libjvm.so
      #10 0x00007f0ec2bc14cb in Universe::verify(VerifyOption, char const*) () from /scratch/opt/mach5/mesos/work_dir/jib-master/install/jdk12-jdk.742/linux-x64-debug.jdk/jdk-12/fastdebug/lib/server/libjvm.so
      #11 0x00007f0ec2c7f034 in VMThread::run() () from /scratch/opt/mach5/mesos/work_dir/jib-master/install/jdk12-jdk.742/linux-x64-debug.jdk/jdk-12/fastdebug/lib/server/libjvm.so
      #12 0x00007f0ec2b716ed in Thread::call_run() () from /scratch/opt/mach5/mesos/work_dir/jib-master/install/jdk12-jdk.742/linux-x64-debug.jdk/jdk-12/fastdebug/lib/server/libjvm.so
      #13 0x00007f0ec2868d46 in thread_native_entry(Thread*) () from /scratch/opt/mach5/mesos/work_dir/jib-master/install/jdk12-jdk.742/linux-x64-debug.jdk/jdk-12/fastdebug/lib/server/libjvm.so
      #14 0x00007f0ec3b78dc5 in start_thread () from /lib64/libpthread.so.0
      #15 0x00007f0ec36a51ed in clone () from /lib64/libc.so.6

      Need to use GCMutexLocker like other verify functions.

            eosterlund Erik Ă–sterlund
            coleenp Coleen Phillimore
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: