Added the SVC list as it impacts the Serviceability as well.

Thanks,
Serguei

On 6/4/15 4:56 AM, Andreas Eriksson wrote:
Hi,

Please review this fix of a crash because of a class redefinition race.

Bug: https://bugs.openjdk.java.net/browse/JDK-8076110
Webrev: http://cr.openjdk.java.net/~aeriksso/8076110/webrev.00/

The crash happens when the redefine occurs while the redefined method is still running. This is because VM_RedefineClasses::redefine_single_class deletes the resolution errors at redefine time, but the running method might still need them.

This is fixed by moving the deletion of the cached resolution errors to when the {add,purge}_previous_version functions have come to the conclusion that no running methods need the old class any more (and therefore no one needs the constant pool and its associated resolution errors either).

A jtreg regression test that reproduces the problem using redefineclasses and objectweb.asm is included in the change.

Thanks,
Andreas

Reply via email to