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

gc/g1/ihop/TestIHOPStatic.java failed "assert(!is_null(v)) failed: narrow klass value can never be zero"

XMLWordPrintable

    • gc
    • x86_64
    • linux

      The following test failed in the JDK16 CI:

      gc/g1/ihop/TestIHOPStatic.java

      Here's a snippet from the log file:

      [1.001s][debug][gc,ergo ] GC(29) Running G1 Merge Heap Roots using 6 workers for 8 regions
      [1.001s][debug][gc,remset ] GC(29) Visited cards 256 Total dirty 2048 (12.50%) Total old 141312 (0.18%)
      # To suppress the following error report, specify this argument
      # after -XX: or in .hotspotrc: SuppressErrorAt=/compressedOops.inline.hpp:100
      #
      # A fatal error has been detected by the Java Runtime Environment:
      #
      # Internal Error (/opt/mach5/mesos/work_dir/slaves/47535081-0322-4d83-bb78-f7e11abb86d0-S27798/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/5e48c4c2-6cf4-4188-9d39-7544879b9c06/runs/44fa89dc-58ae-4045-b8ce-62ef675b9b8c/workspace/open/src/hotspot/share/oops/compressedOops.inline.hpp:100), pid=29823, tid=29848
      # assert(!is_null(v)) failed: narrow klass value can never be zero
      #
      # JRE version: Java(TM) SE Runtime Environment (16.0+22) (fastdebug build 16-ea+22-1221)
      # Java VM: Java HotSpot(TM) 64-Bit Server VM (fastdebug 16-ea+22-1221, mixed mode, sharing, tiered, compressed oops, g1 gc, linux-amd64)
      # Problematic frame:
      # V [libjvm.so+0x8750ec][1.003s][debug][gc,alloc,region ] GC(29) Survivor GC Alloc Region: 0 DUMMY : alloc failed
      [thread 29846 also had an error]
      [1.003s][debug][gc,alloc,region ] GC(29) Survivor GC Alloc Region: 0 DUMMY : alloc failed
      [thread 29845 also had an error][1.003s][debug][gc,alloc,region ] GC(29) Survivor GC Alloc Region: 0 DUMMY : alloc failed

      [1.003s][debug][gc,alloc,region ] GC(29) Survivor GC Alloc Region: 0 DUMMY : alloc failed
      [1.003s][debug][gc,alloc,region ] GC(29) Survivor GC Alloc Region: 0 DUMMY : retiring
      [1.003s][debug][gc,alloc,region ] GC(29) Survivor GC Alloc Region: 0 DUMMY : retired
      [1.003s][debug][gc,alloc,region ] GC(29) Survivor GC Alloc Region: 0 DUMMY : attempting region allocation
      [1.003s][debug][gc,alloc,region ] GC(29) Survivor GC Alloc Region: 0 DUMMY : update
      [1.003s][debug][gc,alloc,region ] GC(29) Survivor GC Alloc Region: 1 129:(S)[0x00000000e8100000,0x00000000e8102720,0x00000000e8200000] : updated
      [1.003s][debug][gc,alloc,region ] GC(29) Survivor GC Alloc Region: 1 129:(S)[0x00000000e8100000,0x00000000e8102720,0x00000000e8200000] : region allocation successful
      [thread 29849 also had an error]
      [thread 29843 also had an error]
      [thread 29847 also had an error]
        CompressedKlassPointers::decode_not_null(unsigned int)+0x5c
      #
      # Core dump will be written. Default location: Core dumps may be processed with "/opt/core.sh %p" (or dumping to /opt/mach5/mesos/work_dir/slaves/47535081-0322-4d83-bb78-f7e11abb86d0-S27635/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/50630bf7-3287-429d-bfe2-1857f63991df/runs/58098c31-a531-487f-b925-3d5b9ba79cbb/testoutput/test-support/jtreg_open_test_hotspot_jtreg_tier1_gc_1/scratch/0/core.29823)
      #
      # An error report file with more information is saved as:
      # /opt/mach5/mesos/work_dir/slaves/47535081-0322-4d83-bb78-f7e11abb86d0-S27635/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/50630bf7-3287-429d-bfe2-1857f63991df/runs/58098c31-a531-487f-b925-3d5b9ba79cbb/testoutput/test-support/jtreg_open_test_hotspot_jtreg_tier1_gc_1/scratch/0/hs_err_pid29823.log
      #
      # If you would like to submit a bug report, please visit:
      # https://bugreport.java.com/bugreport/crash.jsp
      #

      [2020-10-22T07:59:51.882924413Z] Waiting for completion for process 29823
      [2020-10-22T07:59:51.883141800Z] Waiting for completion finished for process 29823
      ----------System.err:(13/798)----------

      Here's the crashing thread's stack:

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

      Current thread (0x00007f1ef400cbf0): GCTaskThread "GC Thread#6" [stack: 0x00007f1edb6f2000,0x00007f1edb7f2000] [id=29848]

      Stack: [0x00007f1edb6f2000,0x00007f1edb7f2000], sp=0x00007f1edb7f0890, free space=1018k
      Native frames: (J=compiled Java code, A=aot compiled Java code, j=interpreted, Vv=VM code, C=native code)
      V [libjvm.so+0x8750ec] CompressedKlassPointers::decode_not_null(unsigned int)+0x5c
      V [libjvm.so+0xc9d338] G1ParScanThreadState::do_copy_to_survivor_space(G1HeapRegionAttr, oop, markWord)+0x398
      V [libjvm.so+0xca2978] void G1ParScanThreadState::do_oop_evac<narrowOop>(narrowOop*)+0xd8
      V [libjvm.so+0xc9e263] G1ParScanThreadState::trim_queue_to_threshold(unsigned int)+0x343
      V [libjvm.so+0xcb7d4a] G1ParScanThreadState::trim_queue_partially()+0x3a
      V [libjvm.so+0xcc162f] G1ScanHRForRegionClosure::scan_heap_roots(HeapRegion*)+0x89f
      V [libjvm.so+0xcb3cad] G1RemSet::scan_heap_roots(G1ParScanThreadState*, unsigned int, G1GCPhaseTimes::GCParPhases, G1GCPhaseTimes::GCParPhases, bool)+0x37d
      V [libjvm.so+0xc12bab] G1EvacuateRegionsTask::scan_roots(G1ParScanThreadState*, unsigned int)+0x4b
      V [libjvm.so+0xc137e6] G1EvacuateRegionsBaseTask::work(unsigned int)+0x56
      V [libjvm.so+0x19d2a74] GangWorker::run_task(WorkData)+0x84
      V [libjvm.so+0x19d2bb4] GangWorker::loop()+0x44
      V [libjvm.so+0x186d830] Thread::call_run()+0x100
      V [libjvm.so+0x155b886] thread_native_entry(Thread*)+0x116


      The task description for this job set is:

      Run test open/test/hotspot/jtreg/:tier1_gc_1 with linux-x64-debug

      so this looks like an ordinary test run with no special options.

            Unassigned Unassigned
            dcubed Daniel Daugherty
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: