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

Use of Copy::conjoint_oops_atomic in global mark stack causes crashes on arm64

    XMLWordPrintable

    Details

    • Subcomponent:
      gc
    • Resolved In Build:
      b139
    • Verification:
      Verified

      Description

      hotspot/src/share/vm/oops/klass.inline.hpp:63), pid=18062, tid=18087
      assert(!is_null(v)) failed: narrow klass value can never be zero

      Current thread (0x0000007f9028f000): VMThread "VM Thread" [stack: 0x0000007f29343000,0x0000007f29443000] [id=18087]

      Stack: [0x0000007f29343000,0x0000007f29443000], sp=0x0000007f2943fbe0, free space=1010k
      Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
      V [libjvm.so+0x10c4ea4] VMError::report_and_die(int, char const*, char const*, std::__va_list, Thread*, unsigned char*, void*, void*, char const*, int, unsigned long)+0x140
      V [libjvm.so+0x10c5aac] VMError::report_and_die(Thread*, char const*, int, char const*, char const*, std::__va_list)+0x54
      V [libjvm.so+0x6ba3b0] report_vm_error(char const*, int, char const*, char const*, ...)+0xe0
      V [libjvm.so+0xcd7dac] MarkSweep::mark_object(oop)+0x448
      V [libjvm.so+0xcd8978] void MarkSweep::mark_and_push<unsigned int>(unsigned int*)+0x114
      V [libjvm.so+0xcdbca8] void InstanceRefKlass::oop_oop_iterate_ref_processing<true, MarkAndPushClosure>(oop, MarkAndPushClosure*)+0x6b0
      V [libjvm.so+0xcdbe68] void InstanceRefKlass::oop_oop_iterate<true, MarkAndPushClosure>(oop, MarkAndPushClosure*)+0x18c
      V [libjvm.so+0xcd5b4c] InstanceRefKlass::oop_oop_iterate_nv(oop, MarkAndPushClosure*)+0x34
      V [libjvm.so+0xcd2490] MarkSweep::follow_stack()+0x3ec
      V [libjvm.so+0xcd3798] MarkSweep::FollowRootClosure::do_oop(oop*)+0x134
      V [libjvm.so+0xdda2c0] OopMapSet::all_do(frame const*, RegisterMap const*, OopClosure*, void (*)(oop*, oop*), OopClosure*)+0x374
      V [libjvm.so+0x784174] frame::oops_code_blob_do(OopClosure*, CodeBlobClosure*, RegisterMap const*)+0x44
      V [libjvm.so+0x102fa0c] JavaThread::oops_do(OopClosure*, CodeBlobClosure*)+0x1dc
      V [libjvm.so+0x1038f7c] Threads::possibly_parallel_oops_do(bool, OopClosure*, CodeBlobClosure*)+0x58
      V [libjvm.so+0x8312bc] G1RootProcessor::process_strong_roots(OopClosure*, CLDClosure*, CodeBlobClosure*)+0x90
      V [libjvm.so+0x7f3010] G1MarkSweep::mark_sweep_phase1(bool&, bool)+0x3a8
      V [libjvm.so+0x7f6658] G1MarkSweep::invoke_at_safepoint(ReferenceProcessor*, bool)+0x160
      V [libjvm.so+0x7b5944] G1CollectedHeap::do_full_collection(bool, bool)+0x6b4
      V [libjvm.so+0x7b6994] G1CollectedHeap::satisfy_failed_allocation_helper(unsigned long, unsigned char, bool, bool, bool, bool*)+0x12c
      V [libjvm.so+0x7b6abc] G1CollectedHeap::satisfy_failed_allocation(unsigned long, unsigned char, bool*)+0x114
      V [libjvm.so+0x110847c] VM_G1CollectForAllocation::doit()+0xcc
      V [libjvm.so+0x11066c0] VM_Operation::evaluate()+0xb0
      V [libjvm.so+0x11025b8] VMThread::evaluate_operation(VM_Operation*)+0x134
      V [libjvm.so+0x1102ffc] VMThread::loop()+0x500
      V [libjvm.so+0x1103294] VMThread::run()+0xd4
      V [libjvm.so+0xdfb408] thread_native_entry(Thread*)+0x118
      C [libpthread.so.0+0x7e48] start_thread+0xac

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              tschatzl Thomas Schatzl
              Reporter:
              jprovino Joseph Provino (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              7 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved: