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

Remove G1RecordHRRSOops and G1RecordHRRSEvents


    • Type: Bug
    • Status: Resolved
    • Priority: P3
    • Resolution: Fixed
    • Affects Version/s: 9
    • Fix Version/s: 9
    • Component/s: hotspot
    • Labels:
    • Subcomponent:
    • Resolved In Build:


      The two develop flags G1RecordHRRSOops and G1RecordHRRSEvents seem to have been added to record information about remembered set management that could be useful for debugging.

      The information they record is never printed. (HeapRegionRemSet::print_recorded() is never called in the code). Thus the only use case must be to call the print method from a debugging session, such as for example in gdb.

      When I call HeapRegionRemSet::print_recorded() from gdb I get a SIGSEGV. Same if I add a call to it from the end of a GC. See the partial hs_err file below.

      Since this is broken debugging code that uses logging I think it is better to remove it than to try to fix it and update it to use the unified logging framework.

      # A fatal error has been detected by the Java Runtime Environment:
      # SIGSEGV (0xb) at pc=0x00007ffff6461f3e, pid=9436, tid=9495
      # JRE version: Java(TM) SE Runtime Environment (9.0) (build 1.9.0-internal-fastdebug-brutisso_2015_10_30_09_20-b00)
      # Java VM: Java HotSpot(TM) 64-Bit Server VM (1.9.0-internal-fastdebug-brutisso_2015_10_30_09_20-b00, mixed mode, tiered, compressed oops, g1 gc, linux-amd64)
      # Problematic frame:
      # V [libjvm.so+0xa8cf3e] HeapRegionRemSet::print_recorded()+0x13e
      # Core dump will be written. Default location: Core dumps may be processed with "/usr/share/apport/apport %p %s %c %P" (or dumping to /localhome/repos/jdk9-hs-rt/hotspot/core.9436)
      # If you would like to submit a bug report, please visit:
      # http://bugreport.java.com/bugreport/crash.jsp

      --------------- S U M M A R Y ------------

      Command Line: -Xmx128m -XX:+UseG1GC -XX:+G1RecordHRRSOops -XX:+G1RecordHRRSEvents -XX:+G1TraceHeapRegionRememberedSet TestGCOld 50 1 20 10 10000

      Host: sthws37, Intel(R) Xeon(R) CPU E5-2665 0 @ 2.40GHz, 32 cores, 31G, Ubuntu 14.04.3 LTS
      Time: Thu Nov 5 12:53:47 2015 CET elapsed time: 81 seconds (0d 0h 1m 21s)

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

      Current thread (0x00007ffff02c8000): VMThread [stack: 0x00007fff00200000,0x00007fff00301000] [id=9495]

      Stack: [0x00007fff00200000,0x00007fff00301000], sp=0x00007fff002ff840, free space=1022k
      Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
      V [libjvm.so+0xa8cf3e] HeapRegionRemSet::print_recorded()+0x13e
      V [libjvm.so+0x974c5d] G1CollectedHeap::do_collection_pause_at_safepoint(double)+0xf6d
      V [libjvm.so+0x125c09a] VM_G1IncCollectionPause::doit()+0xca
      V [libjvm.so+0x125a455] VM_Operation::evaluate()+0xa5
      V [libjvm.so+0x1257be4] VMThread::evaluate_operation(VM_Operation*)+0x154
      V [libjvm.so+0x1258513] VMThread::loop()+0x4c3
      V [libjvm.so+0x125874b] VMThread::run()+0xbb
      V [libjvm.so+0xf5049a] java_start(Thread*)+0xca




            • Assignee:
              brutisso Bengt Rutisson (Inactive)
              brutisso Bengt Rutisson (Inactive)
            • Votes:
              0 Vote for this issue
              2 Start watching this issue


              • Created: