RFR: 8077279: assert(ic->is_clean()) failed: IC should be clean (original) (raw)

Stefan Johansson stefan.johansson at oracle.com
Fri Jun 12 08:55:42 UTC 2015


Hi,

Please review this change to fix: https://bugs.openjdk.java.net/browse/JDK-8077279

Webrev: http://cr.openjdk.java.net/~sjohanss/8077279/hotspot.00/

Summary: While doing some extra G1 testing a couple of issues were found. I've been able to reproduce this specific assert but I suspect that both JDK-8077282 and JDK-8077283 are related as well.

The root cause of the problem is a patch that was made a few months back that made it possible to have nmethods allocated in a code heap that differs from the compile level of the given nmethod, see [1]. In the NMethodIterator used by G1 class unloading it is assumed that the nmethods have the same compile level as the code heap the are allocated in, which now is wrong. This can, under certain circumstances, lead to not all nmethods being cleaned correctly and then hit this assertion.

Testing:

Thanks, Stefan

[1] https://bugs.openjdk.java.net/browse/JDK-8072774



More information about the hotspot-compiler-dev mailing list