nsk/jvmti/CompiledMethodUnload/compmethunload001 fails with segv

XMLWordPrintable

    • b32
    • generic
    • generic
    • Verified

      nsk/jvmti/CompiledMethodUnload/compmethunload001 fails because a recent
      jvmti change added the call

      JvmtiExport::post_compiled_method_unload_at_safepoint(method()->jmethod_id());
       
      to nmethod::flush. The call to jmethod_id means that the methodOop
      embedded in an nmethod is live until the nmethod is flushed, not just
      until the the nmethod is made a zombie. If a gc happens while the
      nmethod is a zombie, the call to jmethod_id can segv on the bad
      methodOop. The bug was provoked on linux-amd64 by the
      compmethunload001 nsk test, though it can happen on any platform.

            Assignee:
            Alan Bateman
            Reporter:
            Paul Hohensee
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

              Created:
              Updated:
              Resolved:
              Imported:
              Indexed: