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

1.5.0_10 64-Bit SIGBUS with ParallelGC in MarkSweep::MarkAndPushClosure::do_oop

XMLWordPrintable

    • b01
    • sparc
    • solaris_10

      Customer's application 'partition' crashed due to SIGBUS in MarkAndPushClosure::do_oop because the argument oopDesc** was a wrong pointer

      % /net/cores.germany/cores/CA_37862788/hs_err_pid15823_moreinfo.log

      # Java VM: Java HotSpot(TM) 64-Bit Server VM (1.5.0_10-b03 mixed mode)

      Stack: [0xffffffff70100000,0xffffffff70200000), sp=0xffffffff701fea30, free space=1018k
      Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
      V [libjvm.so+0x1edf1c];; void MarkSweep::MarkAndPushClosure::do_oop(oopDesc**)+0x14
      V [libjvm.so+0x2990b0];; void OopMapSet::all_do(const frame*,CodeBlob*,const RegisterMap*,OopClosure*,void(*)(oopDesc**,oopDesc**),OopClosure*,OopClosure*)+0x2c8
      V [libjvm.so+0x29918c];; void OopMapSet::oops_do(const frame*,CodeBlob*,const RegisterMap*,OopClosure*)+0x4c
      V [libjvm.so+0x298d6c];; void frame::oops_code_blob_do(OopClosure*,const RegisterMap*)+0x38
      V [libjvm.so+0x2af888];; void JavaThread::oops_do(OopClosure*)+0x130
      V [libjvm.so+0x3f680c];; void Threads::oops_do(OopClosure*)+0x44
      V [libjvm.so+0x41175c];; void PSMarkSweep::invoke_no_policy(int*,int)+0x4c4
      V [libjvm.so+0x3ad8ec];; void PSScavenge::invoke(int*)+0x1ac
      V [libjvm.so+0x3adc0c];; HeapWord*ParallelScavengeHeap::failed_mem_allocate(int*,unsigned long,int,int)+0xd4
      V [libjvm.so+0x3ae050];; void VM_ParallelGCFailedAllocation::doit()+0xc0
      V [libjvm.so+0x3a55cc];; void VM_Operation::evaluate()+0x8c
      V [libjvm.so+0x47e294];; void VMThread::run()+0x714
      V [libjvm.so+0x7b2880];; void*_start(void*)+0x218

      VM_Operation (0xfffffffed013d220): parallel gc failed allocation, mode: safepoint, requested by thread 0x00000001013a6000

      Heap
       PSYoungGen total 143232K, used 38108K [0xffffffff50000000, 0xffffffff5d000000, 0xffffffff70000000)
        eden space 79936K, 0% used [0xffffffff50000000,0xffffffff50000000,0xffffffff54e10000)
        from space 63296K, 60% used [0xffffffff58e30000,0xffffffff5b3673b8,0xffffffff5cc00000)
        to space 64640K, 0% used [0xffffffff54f10000,0xffffffff54f10000,0xffffffff58e30000)
       PSOldGen total 643072K, used 638477K [0xfffffffef0000000, 0xffffffff17400000, 0xffffffff50000000)
        object space 643072K, 99% used [0xfffffffef0000000,0xffffffff16f83500,0xffffffff17400000)
       PSPermGen total 61440K, used 59926K [0xfffffffee8000000, 0xfffffffeebc00000, 0xfffffffef0000000)
        object space 61440K, 97% used [0xfffffffee8000000,0xfffffffeeba85980,0xfffffffeebc00000)

      VM state:at safepoint (normal execution)

      CPU:total 8 has_v8, has_v9, has_vis1, has_vis2, is_ultra3


      % /net/cores.germany/cores/CA_37862788/cor_jj.dbx.info

        ---- called from signal handler with signal 10 (SIGBUS) ------
        [8] libjvm.so:MarkSweep::MarkAndPushClosure::do_oop(0xffffffff7f2b63e8, 0xfffffffec923cf60, 0xffffffff7f2b6560, 0x3, 0x0, 0xb0), at 0xffffffff7e9edf1c
        [9] libjvm.so:OopMapSet::all_do(0xffffffff701feec8, 0x1641, 0xffffffff701feee8, 0xffffffff7f2bb5f0, 0xffffffff7f2bb5f0, 0xffffffff7f2b63e8), at 0xffffffff7ea990a8
        [10] libjvm.so:OopMapSet::oops_do(0xffffffff701feec8, 0xffffffff704ea010, 0xffffffff701feee8, 0xffffffff7f2b63e8, 0xb1c0, 0x780eb4), at 0xffffffff7ea99184
        [11] libjvm.so:frame::oops_code_blob_do(0xffffffff701feec8, 0xffffffff7f2b63e8, 0xffffffff704ea010, 0xffffffff701feee8, 0xffffffff7ea5aa34, 0xffffffff7f21a000), at 0xffffffff7ea98d64
      ....
      (dbx) frame 8
      0xffffffff7e9edf1c: do_oop+0x0014: ldx [%i3], %o5
      ...
      i0-i1 0xffffffff7f2b63e8 0xfffffffec923cf60
      i2-i3 0xffffffff7f2b6560 0x0000000000000003
      ...
      0xffffffff7e9edf08: do_oop : save %sp, -176, %sp
      0xffffffff7e9edf0c: do_oop+0x0004: ldx [%i1], %i3
      0xffffffff7e9edf10: do_oop+0x0008: cmp %i3, 0
      0xffffffff7e9edf14: do_oop+0x000c: be,pn %xcc,do_oop+0x224 ! 0xffffffff7e9ee12c
      0xffffffff7e9edf18: do_oop+0x0010: nop
      0xffffffff7e9edf1c: do_oop+0x0014: ldx [%i3], %o5
      ...
      (dbx) x 0xfffffffec923cf60/LX
      0xfffffffec923cf60: 0x0000000000000003
      ...

      % /net/cores.germany/cores/CA_37862788/cor_jj.dbx.args

      -Xms512m -Xmx2g
      -XX:NewSize=128m -XX:MaxNewSize=512m -XX:NewRatio=2
      -XX:SurvivorRatio=6 -XX:MaxTenuringThreshold=100
      -XX:MaxPermSize=128m -XX:PermSize=32m
      -XX:ReservedCodeCacheSize=128m
      -XX:+UseParallelGC
      -XX:ParallelGCThreads=2
      -XX:MaxGCPauseMillis=2000
      -XX:ThreadStackSize=256
      -XX:+UseMPSS
      -XX:+UseBiasedLocking
      -XX:+UseFastJNIAccessors
      -XX:+UseFastEmptyMethods
      -Xconcurrentio
      -XX:+DisableExplicitGC

            kevinw Kevin Walls
            cmassi Claudio Massi (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved:
              Imported:
              Indexed: