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

Kitchensink failed with "assert(early->flag() == current->flag()) failed: Should be the same"



    • b25
    • x86_64



        The following test failed in a local run on my Ubuntu 20.04 machine:


        I'm tested the fixes for JDK-8271251 and JDK-8271348 and I've
        applied those fixes to a JDK17 repo baselined at:

        commit 377a08679be8f56c95b55c5db9f6044fbf2ee0be
        Author: Daniel D. Daugherty <daniel.daugherty@oracle.com>
        Date: Tue Jul 27 14:55:47 2021 -0400

            8271348: Add stronger sanity check of thread state when polling for safepoin

        commit e642f16f74d4beacf996d76c0de09379c27dd868
        Author: Daniel D. Daugherty <daniel.daugherty@oracle.com>
        Date: Tue Jul 27 17:07:57 2021 -0400

            8271251: JavaThread::java_suspend() fails with "fatal error: Illegal threads
        tate encountered: 6"

        commit fbe28e4ee1f1ff7fb617c2e1f96c04f4b371fa2b
        Author: Hannes Wallnöfer <hannesw@openjdk.org>
        Date: Tue Jul 27 19:28:54 2021 +0000

            8270866: NPE in DocTreePath.getTreePath()
            Reviewed-by: jjg

        Here's a snippet from the log file:

        The tail of stress stdout is:
        For random generator using seed: 2328450134296637374
        To re-run test with same seed value please add "-Djdk.test.lib.random.seed=2328450134296637374" to command line.
        Stress process main method is started.
        # A fatal error has been detected by the Java Runtime Environment:
        # Internal Error (/work/shared/bug_hunt/8271251_for_jdk17.git/open/src/hotspot/share/services/memReporter.cpp:787), pid=162286, tid=162361
        # assert(early->flag() == current->flag()) failed: Should be the same
        # JRE version: Java(TM) SE Runtime Environment (17.0) (slowdebug build 17-internal+0-LTS-2021-07-27-2112574.dcubed...)
        # Java VM: Java HotSpot(TM) 64-Bit Server VM (slowdebug 17-internal+0-LTS-2021-07-27-2112574.dcubed..., mixed mode, sharing, tiered, compressed class ptrs, g1 gc, linux-amd64)
        # Problematic frame:
        # V [libjvm.so+0xeaf280] MemDetailDiffReporter::diff_virtual_memory_site(VirtualMemoryAllocationSite const*, VirtualMemoryAllocationSite const*) const+0x4a
        # Core dump will be written. Default location: Core dumps may be processed with "/usr/share/apport/apport %p %s %c %d %P %E" (or dumping to /work/shared/bug_hunt/8271251_for_jdk17.git/build/linux-x86_64-normal-server-slowdebug/test-support/jtreg_closed_test_hotspot_jtreg_applications_kitchensink_Kitchensink_java/scratch/0/core.162286)
        # JFR recording file will be written. Location: /work/shared/bug_hunt/8271251_for_jdk17.git/build/linux-x86_64-normal-server-slowdebug/test-support/jtreg_closed_test_hotspot_jtreg_applications_kitchensink_Kitchensink_java/scratch/0/hs_err_pid162286.jfr
        Unsupported internal testing APIs have been used.

        # An error report file with more information is saved as:
        # /work/shared/bug_hunt/8271251_for_jdk17.git/build/linux-x86_64-normal-server-slowdebug/test-support/jtreg_closed_test_hotspot_jtreg_applications_kitchensink_Kitchensink_java/scratch/0/hs_err_pid162286.log
        [thread 166384 also had an error][thread 166385 also had an error]

        # If you would like to submit a bug report, please visit:
        # https://bugreport.java.com/bugreport/crash.jsp

        Here's the crashing thread's stack:

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

        Current thread (0x00007feea82e5d50): JavaThread "Attach Listener" daemon [_thread_in_vm, id=162361, stack(0x00007fe65acfd000,0x00007fe65adfe000)]

        Stack: [0x00007fe65acfd000,0x00007fe65adfe000], sp=0x00007fe65adfc030, free space=1020k
        Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
        V [libjvm.so+0xeaf280] MemDetailDiffReporter::diff_virtual_memory_site(VirtualMemoryAllocationSite const*, VirtualMemoryAllocationSite const*) const+0x4a
        V [libjvm.so+0xeaee03] MemDetailDiffReporter::diff_virtual_memory_sites() const+0x16b
        V [libjvm.so+0xeaeafc] MemDetailDiffReporter::report_diff()+0x30
        V [libjvm.so+0xf38d51] NMTDCmd::report_diff(bool, unsigned long)+0x1ad
        V [libjvm.so+0xf38998] NMTDCmd::execute(DCmdSource, JavaThread*)+0x540
        V [libjvm.so+0x8c8426] DCmd::parse_and_execute(DCmdSource, outputStream*, char const*, char, JavaThread*)+0x22c
        V [libjvm.so+0x55aa4e] jcmd(AttachOperation*, outputStream*)+0x4a
        V [libjvm.so+0x55b466] attach_listener_thread_entry(JavaThread*, JavaThread*)+0x349
        V [libjvm.so+0x118a3fc] JavaThread::thread_main_inner()+0x14c
        V [libjvm.so+0x118a2a8] JavaThread::run()+0x11e
        V [libjvm.so+0x1187ba0] Thread::call_run()+0x180
        V [libjvm.so+0xf89773] thread_native_entry(Thread*)+0x18f

        Since this is a crash in NMT code, I'm starting this bug off
        in hotspot/runtime.


          Issue Links



                zgu Zhengyu Gu
                dcubed Daniel Daugherty
                0 Vote for this issue
                9 Start watching this issue