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

JVM intermittently crashes with assert "assert(destination() == (HeapWord*)moved_oop + moved_oop->size()) failed: sanity" with COOPS

    XMLWordPrintable

Details

    • gc
    • generic
    • generic

    Description

      64-bit JVM intermittently crashes with following assert while extensive class loading/unloading with fixed metaspace size when COOPS turned on:

      #
      # A fatal error has been detected by the Java Runtime Environment:
      #
      # Internal Error (/HUDSON/workspace/2-build-solaris-amd64/jdk8/5069/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp:3386), pid=19424, tid=4
      # assert(destination() == (HeapWord*)moved_oop + moved_oop->size()) failed: sanity
      #
      # JRE version: Java(TM) SE Runtime Environment (8.0-b98) (build 1.8.0-ea-fastdebug-b98)
      # Java VM: Java HotSpot(TM) 64-Bit Server VM (25.0-b40-fastdebug mixed mode solaris-amd64 compressed oops)
      # Core dump written. Default location: /export/local/aurora/sandbox/results/ResultDir/jck60022/core or core.19424
      #
      # If you would like to submit a bug report, please visit:
      # http://bugreport.sun.com/bugreport/crash.jsp
      #

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

      Current thread (0x000000000045d800): GCTaskThread [stack: 0xfffffd7ffea43000,0xfffffd7ffeb43000] [id=4]

      Stack: [0xfffffd7ffea43000,0xfffffd7ffeb43000], sp=0xfffffd7ffeb3fe00, free space=1011k
      Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
      V [libjvm.so+0x2771ac4] void VMError::report(outputStream*)+0x92c
      V [libjvm.so+0x2772f2c] void VMError::report_and_die()+0x56c
      V [libjvm.so+0xf6b4d3] void report_vm_error(const char*,int,const char*,const char*)+0x55f
      V [libjvm.so+0x22fad98] ParMarkBitMap::IterationStatus MoveAndUpdateClosure::do_addr(HeapWord*,unsigned long)+0x1548
      V [libjvm.so+0x21c6ca0] ParMarkBitMap::IterationStatus ParMarkBitMap::iterate(ParMarkBitMapClosure*,unsigned long,unsigned long)const+0x3e0
      V [libjvm.so+0x22f5e73] void PSParallelCompact::fill_region(ParCompactionManager*,unsigned long)+0x92f
      V [libjvm.so+0x22ba52d] void ParCompactionManager::drain_region_stacks()+0x529
      V [libjvm.so+0x226de91] void StealRegionCompactionTask::do_it(GCTaskManager*,unsigned)+0x141
      V [libjvm.so+0x11f6d03] void GCTaskThread::run()+0x473
      V [libjvm.so+0x217ff52] java_start+0x1ce
      C [libc.so.1+0x1222ad] _thrp_setup+0xa5
      C [libc.so.1+0x122550] _lwp_start+0x0
      ....
      Events (10 events):
      Event: 88.531 Executing VM operation: CollectForMetadataAllocation done
      Event: 88.531 Executing VM operation: ParallelGCSystemGC
      Event: 88.988 Executing VM operation: ParallelGCSystemGC done
      Event: 89.089 Executing VM operation: CollectForMetadataAllocation
      Event: 89.544 Executing VM operation: CollectForMetadataAllocation done
      Event: 89.545 Executing VM operation: ParallelGCSystemGC
      Event: 90.008 Executing VM operation: ParallelGCSystemGC done
      Event: 91.432 Executing VM operation: CollectForMetadataAllocation
      Event: 91.877 Executing VM operation: CollectForMetadataAllocation done
      Event: 93.208 Executing VM operation: CollectForMetadataAllocation
      ...

      Issue could be reproduced with 8b98, 8b99. Not sure about previous builds, but at least I was not able to reproduce such issue during long period of time using them. Also, I was not able to reproduce it with 32-bit JVM as well as with -XX:-UseCompressedOops.

      Attachments

        Issue Links

          Activity

            People

              lmesnik Leonid Mesnik
              fzhinkin Filipp Zhinkin
              Votes:
              0 Vote for this issue
              Watchers:
              6 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: