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

G1 uses wrong degree of MT processing since JDK-8270169

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: P1
    • Resolution: Fixed
    • Affects Version/s: 18
    • Fix Version/s: 18
    • Component/s: hotspot
    • Labels:
    • Subcomponent:
      gc
    • Resolved In Build:
      b08
    • CPU:
      x86_64
    • OS:
      linux

      Description

      The following test failed in the JDK18 CI:

      gc/g1/TestEagerReclaimHumongousRegionsClearMarkBits.java

      Here's a snippet from the log file:

      [55.227s][info][gc] GC(145) Pause Young (Normal) (G1 Evacuation Pause) 96M->96M(128M) 528.168ms
      [55.869s][info][gc] GC(146) Pause Young (Normal) (G1 Evacuation Pause) 97M->97M(128M) 641.814ms
      [I@12edcd21 [I@34c45dca [I@52cc8049 [I@5b6f7412
      Finishing test because maximum runtime exceeded
      [I@27973e9b
      # To suppress the following error report, specify this argument
      # after -XX: or in .hotspotrc: SuppressErrorAt=/referenceProcessor.hpp:327
      #
      # A fatal error has been detected by the Java Runtime Environment:
      #
      # Internal Error (/opt/mach5/mesos/work_dir/slaves/35546316-ed70-4084-8244-d672e7734fd1-S56976/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/f910762f-bde0-4482-b105-058ff8e2f0d5/runs/f2a36e2e-4866-43fa-bc16-d21ec0f68ec0/workspace/open/src/hotspot/share/gc/shared/referenceProcessor.hpp:327), pid=11911, tid=11913
      # assert(_next_id < _num_queues) failed: _next_id 0 _num_queues 3 _max_num_queues 10
      #
      # JRE version: Java(TM) SE Runtime Environment (18.0+8) (fastdebug build 18-ea+8-301)
      # Java VM: Java HotSpot(TM) 64-Bit Server VM (fastdebug 18-ea+8-301, mixed mode, sharing, tiered, compressed oops, compressed class ptrs, g1 gc, linux-amd64)
      # Problematic frame:
      # V [libjvm.so+0x16681c1] ReferenceProcessor::discover_reference(oop, ReferenceType) [clone .part.0]+0x671
      #
      # 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/35546316-ed70-4084-8244-d672e7734fd1-S92377/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/769fb53c-1b03-4461-b364-737fa5bbecbf/runs/882e4d6f-5337-4107-8b7c-5ae99582b821/testoutput/test-support/jtreg_open_test_hotspot_jtreg_tier1_gc_1/scratch/2/core.11911)
      #
      # An error report file with more information is saved as:
      # /opt/mach5/mesos/work_dir/slaves/35546316-ed70-4084-8244-d672e7734fd1-S92377/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/769fb53c-1b03-4461-b364-737fa5bbecbf/runs/882e4d6f-5337-4107-8b7c-5ae99582b821/testoutput/test-support/jtreg_open_test_hotspot_jtreg_tier1_gc_1/scratch/2/hs_err_pid11911.log
      #
      # If you would like to submit a bug report, please visit:
      # https://bugreport.java.com/bugreport/crash.jsp
      #
      ];
       stderr: []
       exitValue = 134

      java.lang.RuntimeException: Expected to get exit value of [0]


      Here's the crashing thread's stack:

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

      Current thread (0x00007fb508056780): GCTaskThread "GC Thread#0" [stack: 0x00007fb4f0d6c000,0x00007fb4f0e6c000] [id=11913]

      Stack: [0x00007fb4f0d6c000,0x00007fb4f0e6c000], sp=0x00007fb4f0e6a838, free space=1018k
      Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
      V [libjvm.so+0x16681c1] ReferenceProcessor::discover_reference(oop, ReferenceType) [clone .part.0]+0x671
      V [libjvm.so+0xc1061c] bool InstanceRefKlass::try_discover<narrowOop, G1CMOopClosure>(oop, ReferenceType, G1CMOopClosure*)+0x9c
      V [libjvm.so+0xc11cdd] void InstanceRefKlass::oop_oop_iterate_discovery<narrowOop, G1CMOopClosure, AlwaysContains>(oop, ReferenceType, G1CMOopClosure*, AlwaysContains&) [clone .isra.0]+0x3d
      V [libjvm.so+0xc11f9c] void InstanceRefKlass::oop_oop_iterate<narrowOop, G1CMOopClosure>(oop, G1CMOopClosure*)+0x19c
      V [libjvm.so+0xc1250a] void OopOopIterateDispatch<G1CMOopClosure>::Table::oop_oop_iterate<InstanceRefKlass, narrowOop>(G1CMOopClosure*, oop, Klass*)+0x3a
      V [libjvm.so+0xc4979a] void G1CMTask::process_grey_task_entry<true>(G1TaskQueueEntry)+0x2ba
      V [libjvm.so+0xc420cc] G1CMTask::drain_local_queue(bool) [clone .part.0]+0x8c
      V [libjvm.so+0xc442e2] G1CMTask::do_marking_step(double, bool, bool)+0xe72
      V [libjvm.so+0xc4f2ab] G1CMRemarkTask::work(unsigned int)+0x35b
      V [libjvm.so+0x19eab75] GangWorker::run_task(WorkData)+0x85
      V [libjvm.so+0x19eacb4] GangWorker::loop()+0x44
      V [libjvm.so+0x19ead0a]
      V [libjvm.so+0x188f800] Thread::call_run()+0x100
      V [libjvm.so+0x156ba64] thread_native_entry(Thread*)+0x104

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              tschatzl Thomas Schatzl
              Reporter:
              dcubed Daniel Daugherty
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved: