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

Creation of JNIMethodBlock should be done with a leaf lock

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: P4
    • Resolution: Fixed
    • Affects Version/s: 16
    • Fix Version/s: 16
    • Component/s: hotspot
    • Subcomponent:
    • Resolved In Build:
      b15

      Description

      JVM TI uses handshakes and sometimes need jmethod ids.
      The CLD have an area where these ids are saved, which is created on first request for an id.

      The creation of this area should be done with a leaf lock.
      In W.I.P. asynchronous handshake change-set we use a mutex instead of a semaphore for serializing the handshakes,
      we thus get into lock ranks asserts.

      The CLD metaspace lock cannot be pushed down but we can use the same lock as for creating jmethod ids: JmethodIdCreation_lock.
      And push that down.

      The reason for CLD metaspace lock being used now is that we have one per CLD instead of one global one.

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              rehn Robbin Ehn
              Reporter:
              rehn Robbin Ehn
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved: