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

need to properly handle and hide tmp VTMS transitions

XMLWordPrintable

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

      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

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

              Created:
              Updated:
              Resolved: