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

need to properly handle and hide tmp VTMS transitions

    XMLWordPrintable

Details

    • Bug
    • Resolution: Fixed
    • P3
    • 20
    • 19, 20
    • hotspot
    • 19
    • b17

    Description

      Temporary VTMS transitions are used on the hot code paths in 3 VirtualThread class methods: unpark(), scheduleUnpark() and cancel(). In these cases we can't use the same approach as for normal VTMS transitions because it will add a bid overhead and impact scalability in a bad way.

      An alternate approach is to use a lightweight way of hiding of temporary transitions from the JVM TI agents. However, there are a couple of areas with potential problems:
        - suspending virtual/career threads which are in tmp transitions
        - class load, class prepare and CFLH events in tmp transition code path
        - VM operations and Handshakes on behalf of virtual threads in tmp transitions
        - virtual threads in tmp VTMS transitions can disable normal VTMS transitions

      Some thread identity problems are well covered in the JNI related bug: JDK-8292674

      Attachments

        Issue Links

          Activity

            People

              sspitsyn Serguei Spitsyn
              sspitsyn Serguei Spitsyn
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: