Hi Coleen,

It looks good to me.

Just a couple of minor comments.

http://cr.openjdk.java.net/~coleenp/2019/8181171.01/webrev/src/java.base/share/classes/jdk/internal/misc/Unsafe.java.udiff.html

+ * Throws NoSuchMethodError; for use by the VM for redefinition support.
+ * @since 1.12
+ */

 Replace: 1.12 => 13

 There was already similar error in this file:

3117      * @since 1.9

but:

3397      * @since 9

I guess, there first one is incorrect.


http://cr.openjdk.java.net/~coleenp/2019/8181171.01/webrev/test/jdk/java/lang/instrument/RedefineAddDeleteMethod/DeleteMethodHandle/redef/Xost.java.html

  24 public class Xost {
  25     // Remove static private methods, in A in redefinition.
  26     static class A { }
  27     // Removed public method to get this to compile, but we don't
  28     // try to redefine Xhost.

 I guess, it is better to say redefine Host instead of Xhost.


No need in new webrev.

Thanks,
Serguei


On 2/22/19 3:36 PM, coleen.phillim...@oracle.com wrote:
8210457: JVM crash in ResolvedMethodTable::add_method(Handle)
Summary: Add a function to call NSME in ResolvedMethodTable to replace deleted methods.

This Unsafe.throwX trick is also used for vtable initialization for throwing IllegalAccessError.  Tested with redefinition tests in the repository and tier1-3, and added tests.

open webrev at http://cr.openjdk.java.net/~coleenp/2019/8181171.01/webrev
bug link https://bugs.openjdk.java.net/browse/JDK-8181171

Thanks,
Coleen

Reply via email to