<html>
  <head>
    <meta http-equiv="content-type" content="text/html;
      charset=ISO-8859-1">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    Hi,<br>
    <br>
    please review the following patch for bug 8029343.<br>
    <br>
    <b>Problem:</b><br>
    (1) CodeCache::allocate(...) increments _number_of_blobs before the
    actual allocation is performed. In case the allocation fails the
    counter is set to a wrong value.<br>
    (2) The guarantee(size >= 0, ...) is incorrect. Calling
    CodeCache::allocate(...) with size = 0 leads to a segmentation
    fault. Further, a guarantee is too strong here. We can simply return
    NULL at runtime if the size is <= 0.<br>
    Bug: <a class="moz-txt-link-freetext"
      href="https://bugs.openjdk.java.net/browse/JDK-8029343">https://bugs.openjdk.java.net/browse/JDK-8029343</a><br>
    <br>
    <b>Solution:</b><br>
    (1) The increment is moved after the allocation.<br>
    (2) An assert is used instead of the guarantee and NULL is returned
    if size <= 0.<br>
    Webrev: <a class="moz-txt-link-freetext"
      href="http://cr.openjdk.java.net/%7Eanoll/8029343/webrev.00/">http://cr.openjdk.java.net/~anoll/8029343/webrev.00/</a><br>
    <br>
    Thanks,<br>
    Tobias<br>
  </body>
</html>