<html>
  <head>

    <meta http-equiv="content-type" content="text/html; charset=utf-8">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    <p>The SuspendibleThreadSet API for synchronizing any non-Java
      thread with safepoints currently resides under gc/g1. It is very
      useful for other GCs too (in particular, Shenandoah does use it
      too), so I wanted to move it to a common location like gc/common.
      Then Kim Barrett commented that it might actually be useful for
      other threads outside GC land and to put it under runtime/. So I
      did:</p>
    <p><a moz-do-not-send="true"
        href="http://cr.openjdk.java.net/%7Erkennke/8189276/webrev.00/">http://cr.openjdk.java.net/~rkennke/8189276/webrev.00/</a></p>
    <p>I also added a generic hook to call the STS from safepoint
      sync/desync, which is consequently used by G1 now. In other words,
      the CollectedHeap API that Erik Ö introduced is no longer used by
      G1. Only CMS still uses that API because it has its own way to
      sync with safepoints. I filed <a moz-do-not-send="true"
        href="https://bugs.openjdk.java.net/browse/JDK-8189364">another
        bug</a> for this. Although I have my doubt it will ever be
      fixed. This seems to have been very carefully evolved (to put it
      positive), and the risk of breaking it is relatively high, and
      thus doesn't seem worth the struggle to make it fit the STS.<br>
    </p>
    <p>Issue:<br>
      <a moz-do-not-send="true"
        href="https://bugs.openjdk.java.net/browse/JDK-8189276">https://bugs.openjdk.java.net/browse/JDK-8189276</a></p>
    <p>What do you think? Ok to go in?</p>
    <p><br>
    </p>
    <p>Roman<br>
    </p>
  </body>
</html>