RFR (S) 8193622: JFR test TestUnloadingEventClass.java times out intermittently

Markus Gronlund markus.gronlund at oracle.com
Tue Dec 19 15:40:45 UTC 2017


Hi Coleen,

Line 850 says: // Only constant pool entries have C heap memory to free.

But, with the change, there is an additional else clause that seems to process klasses.

Maybe remove the comment?

Also:

Is the metadata is_klass() check sufficient in allowing for a direct downcast to InstanceKlass* (not Klass*?). Maybe only InstanceKlass'es will ever be on the deallocation_list in this context?

In addition:

 857        // Remove the class so unloading events aren't triggered for 
 858       // this class (scratch or error class) in do_unloading(). 
 859       remove_class(ik);

Does this not remove every klass? Not just a scratch or an error klass?

Thanks
Markus


-----Original Message-----
From: Coleen Phillimore 
Sent: den 19 december 2017 12:43
To: hotspot-runtime-dev at openjdk.java.net runtime <hotspot-runtime-dev at openjdk.java.net>
Subject: RFR (S) 8193622: JFR test TestUnloadingEventClass.java times out intermittently

Summary: Previous change was leaving scratch classes on CLD::_klasses list which are reported to tracing

Tested with assert in tracing code and failed test, and mach4 tier1-5.

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

This change is relative to jdk/hs repository but will be moved to
jdk/jdk10 once the jdk/hs snapshot is integrated.

Thanks,
Coleen


More information about the hotspot-runtime-dev mailing list