RFR (M) 8213753: SymbolTable is double walked during class unloading and clean up table timing in do_unloading

Stefan Karlsson stefan.karlsson at oracle.com
Tue Jan 29 22:10:57 UTC 2019


GC and SystemDictionary::do_unloading changes look good.

https://cr.openjdk.java.net/~coleenp/2019/8213753.01/webrev/src/hotspot/share/classfile/symbolTable.hpp.udiff.html

I think you should move the implementation of these to the cpp file:

+ void reset_has_items_to_clean() { Atomic::store(false, 
&_has_items_to_clean); }
+ void mark_has_items_to_clean() { Atomic::store(true, 
&_has_items_to_clean); }
+ bool has_items_to_clean() const { return 
Atomic::load(&_has_items_to_clean); }

Thanks,
StefanK

On 2019-01-29 20:39, coleen.phillimore at oracle.com wrote:
> Summary: remove gc timing for short runtime cleanup triggering; make 
> symbol table cleaning triggered automatically on unloading
>
> Ran runThese with all Oracle GCs and got similar numbers of symbols 
> unloaded.  Also ran tier1-5.
>
> See bug for more information.
>
> open webrev at http://cr.openjdk.java.net/~coleenp/2019/8213753.01/webrev
> bug link https://bugs.openjdk.java.net/browse/JDK-8213753
>
> Thanks,
> Coleen



More information about the hotspot-dev mailing list