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

Tobias Hartmann tobias.hartmann at oracle.com
Fri Jun 12 14:34:48 UTC 2015

Hi Stefan,

looks good to me (not a reviewer). Thanks for fixing this!


On 12.06.2015 10:55, Stefan Johansson wrote:
> 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:
> * Built and tested in JPRT
> * RBT run with using these testlists: jdk/test/:jdk,hotspot/test/:hotspot_all,vm.mlvm.testlist.
> Thanks,
> Stefan
> [1] https://bugs.openjdk.java.net/browse/JDK-8072774

More information about the hotspot-compiler-dev mailing list