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

JfrTypeSet::write_klass can enqueue a CLD klass that is unloading

    XMLWordPrintable

Details

    • Bug
    • Resolution: Fixed
    • P2
    • 23
    • 22, 23
    • hotspot
    • jfr
    • b06
    • x86_64
    • linux

    Backports

      Description

        The following test failed in the JDK23 CI:

        applications/runthese/RunThese30M.java

        Here's snippets from an hs_err_pid file:

        # SIGSEGV (0xb) at pc=0x00007f0729505178, pid=106968, tid=107010
        #
        # JRE version: Java(TM) SE Runtime Environment (23.0+5) (build 23-ea+5-295)
        # Java VM: Java HotSpot(TM) 64-Bit Server VM (23-ea+5-295, mixed mode, sharing, tiered, compressed class ptrs, parallel gc, linux-amd64)
        # Problematic frame:
        # V [libjvm.so+0x992178] JfrTypeSet::serialize(JfrCheckpointWriter*, JfrCheckpointWriter*, bool, bool)+0x1938

        <snip>

        --------------- T H R E A D ---------------

        Current thread (0x00007f0378050030): JavaThread "JFR Recorder Thread" daemon [_thread_in_vm, id=107010, stack(0x00007f039a256000,0x00007f039a356000) (1024K)]

        Stack: [0x00007f039a256000,0x00007f039a356000], sp=0x00007f039a354950, free space=1018k
        Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
        V [libjvm.so+0x992178] JfrTypeSet::serialize(JfrCheckpointWriter*, JfrCheckpointWriter*, bool, bool)+0x1938 (array.hpp:102)
        V [libjvm.so+0x914da0] flush_type_set(Thread*)+0x70 (jfrCheckpointManager.cpp:640)
        V [libjvm.so+0x9173e1] JfrCheckpointManager::flush_type_set()+0xc1 (jfrCheckpointManager.cpp:650)
        V [libjvm.so+0x966c04] JfrRecorderService::flush()+0x94 (jfrRecorderService.cpp:158)
        V [libjvm.so+0x967656] JfrRecorderService::invoke_flush()+0x76 (jfrRecorderService.cpp:158)
        V [libjvm.so+0x967b08] JfrRecorderService::flushpoint()+0x98 (jfrRecorderService.cpp:678)
        V [libjvm.so+0x969180] recorderthread_entry(JavaThread*, JavaThread*)+0x120 (jfrRecorderThreadLoop.cpp:83)
        V [libjvm.so+0x90b4f8] JavaThread::thread_main_inner() [clone .part.0]+0xb8 (javaThread.cpp:721)
        V [libjvm.so+0xebd38f] Thread::call_run()+0x9f (thread.cpp:220)
        V [libjvm.so+0xce1545] thread_native_entry(Thread*)+0xd5 (os_linux.cpp:789)

        siginfo: si_signo: 11 (SIGSEGV), si_code: 2 (SEGV_ACCERR), si_addr: 0x00007f022c2b2ea8

        Attachments

          Issue Links

            Activity

              People

                mgronlun Markus Grönlund
                dcubed Daniel Daugherty
                Votes:
                0 Vote for this issue
                Watchers:
                4 Start watching this issue

                Dates

                  Created:
                  Updated:
                  Resolved: