RFR (XXS): 8179244: Assert failed in instanceMirrorKlass.inline.hpp

Thomas Schatzl thomas.schatzl at oracle.com
Mon Nov 20 11:56:03 UTC 2017


Hi all,

  can I have reviews for this small comment update that clarifies that
the assert in that location is too strong and should be commented out.

The issue is that an assert fails during CMS precleaning if class
loading occurred where the mirror ended up in the old generation (in
some situations CMS allocates directly into old gen). This assert found
that a klass that has had a NULL value suddenly changed its value to
something else.

This is normal behavior in the situation described above.

Also checked that we do not miss iterating over a CLD for such oops -
there is actually explicit support in class loading for this, where
such CLDs (and their mirrors) are kept alive until remark and iterated
over again there. (Look for "CMS support" in classLoaderData.?pp). 

CR:
https://bugs.openjdk.java.net/browse/JDK-8179244
Webrev:
http://cr.openjdk.java.net/~tschatzl/8179244/webrev/
Testing:
local compilation (just a comment added)

Thanks,
  Thomas




More information about the hotspot-gc-dev mailing list