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

SEGV in BitMap::get_next_one_offset_inline_aligned_right()

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: P4 P4
    • 6u101
    • 6u65, 6u71
    • hotspot
    • b03
    • sparc
    • solaris_10

      64-bit Java SE 6u65 processes receive signal SEGV intermittently:


      Error message:

      # A fatal error has been detected by the Java Runtime Environment:
      #
      # SIGSEGV (0xb) at pc=0xffffffff7e083510, pid=15647, tid=26
      #
      # JRE version: 6.0_65-b14
      # Java VM: Java HotSpot(TM) 64-Bit Server VM (20.65-b04 mixed mode solaris-sparc compress
      ed oops)
      # Problematic frame:
      # V [libjvm.so+0x883510] unsigned long BitMap::get_next_one_offset_inline_aligned_right(unsigned long,unsigned long)const+0x20

      Pattern is consistent:

      % grep '# V' *
      hs_err_pid15647.log:# V [libjvm.so+0x883510] unsigned long BitMap::get_next_one_offset_inline_aligned_right(unsigned long,unsigned long)const+0x20
      hs_err_pid2251.log:# V [libjvm.so+0x883510] unsigned long BitMap::get_next_one_offset_inline_aligned_right(unsigned long,unsigned long)const+0x20
      hs_err_pid3014.log:# V [libjvm.so+0x883510] unsigned long BitMap::get_next_one_offset_inline_aligned_right(unsigned long,unsigned long)const+0x20
      hs_err_pid7942.log:# V [libjvm.so+0x883510] unsigned long BitMap::get_next_one_offset_inline_aligned_right(unsigned long,unsigned long)const+0x20
      %

      % grep '^# SIGSEGV' *
      hs_err_pid15647.log:# SIGSEGV (0xb) at pc=0xffffffff7e083510, pid=15647, tid=26
      hs_err_pid2251.log:# SIGSEGV (0xb) at pc=0xffffffff7e083510, pid=2251, tid=6
      hs_err_pid3014.log:# SIGSEGV (0xb) at pc=0xffffffff7e083510, pid=3014, tid=6
      hs_err_pid7942.log:# SIGSEGV (0xb) at pc=0xffffffff7e083510, pid=7942, tid=26
      %

      % grep elapsed *
      hs_err_pid15647.log:elapsed time: 2155 seconds
      hs_err_pid2251.log:elapsed time: 46778 seconds
      hs_err_pid3014.log:elapsed time: 75547 seconds
      hs_err_pid7942.log:elapsed time: 90029 seconds
      %

      Stack trace of failing thread:

      hs_err_pid15647.log
      Stack: [0xffffffff73000000,0xffffffff73100000], sp=0xffffffff730ff030, free space=1020k
      Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
      V [libjvm.so+0x883510] unsigned long BitMap::get_next_one_offset_inline_aligned_right(unsigned long,unsigned long)const+0x20
      V [libjvm.so+0x8adefc] HeapWord*ParallelCompactData::calc_new_pointer(HeapWord*)+0x88
      V [libjvm.so+0x5e06f8] int instanceKlassKlass::oop_update_pointers(ParCompactionManager*,oopDesc*)+0x80
      V [libjvm.so+0x8b50a4] ParMarkBitMap::IterationStatus MoveAndUpdateClosure::do_addr(HeapWord*,unsigned long)+0x74
      V [libjvm.so+0x88323c] ParMarkBitMap::IterationStatus ParMarkBitMap::iterate(ParMarkBitMapClosure*,unsigned long,unsigned long)const+0x9c
      V [libjvm.so+0x8b4ddc] void PSParallelCompact::move_and_update(ParCompactionManager*,PSParallelCompact::SpaceId)+0x174
      V [libjvm.so+0x8b1f98] void PSParallelCompact::compact_perm(ParCompactionManager*)+0x78
      V [libjvm.so+0x8b0d0c] void PSParallelCompact::invoke_no_policy(bool)+0x5f4
      V [libjvm.so+0x8b8388] void PSScavenge::invoke()+0x198
      V [libjvm.so+0x88a110] HeapWord*ParallelScavengeHeap::failed_mem_allocate(unsigned long,bool)+0xc0
      V [libjvm.so+0x263784] void VM_ParallelGCFailedAllocation::doit()+0xac
      V [libjvm.so+0x25fc24] void VM_Operation::evaluate()+0x8c
      V [libjvm.so+0x9c169c] void VMThread::evaluate_operation(VM_Operation*)+0xd4
      V [libjvm.so+0x9c1bb4] void VMThread::loop()+0x40c
      V [libjvm.so+0x2d6cf4] void VMThread::run()+0xa4
      V [libjvm.so+0x86fde4] java_start+0x164


      The failure pattern is pretty consistent.
      The only difference was:

      VM_Operation (0xfffffffdaaafea70): ParallelGCFailedAllocation, mode: safepoint, requested by thread 0x0000000108fa9000

      vs.
      VM_Operation (0xfffffffda4dfca38): ParallelGCSystemGC, mode: safepoint, requested by thread 0x0000000104303000


      In all cases, the following runtime parameter was configured:
      -Xrunjdwp:transport=dt_socket,server=y,address=25008,suspend=n

      So, /opt/jdk1.6.0_65/jre/lib/sparcv9/libjdwp.so was used.

        1. hs_err_pid2251.log
          13 kB
        2. hs_err_pid3014.log
          15 kB
        3. hs_err_pid7942.log
          15 kB
        4. hs_err_pid15647.log
          31 kB

            pnauman Paul Nauman (Inactive)
            thlenz Thomas Lenz (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

              Created:
              Updated:
              Resolved: