8208677: Move inner metaspace cleaning out of class unloading

Move to safepoint cleanup actions to do if needed.

Reviewed-by: eosterlund, hseigel
This commit is contained in:
Coleen Phillimore 2018-08-08 15:24:21 -04:00
parent 149026aa65
commit a7b66f6f5e
10 changed files with 94 additions and 31 deletions

View file

@ -3665,7 +3665,7 @@ bool InstanceKlass::_has_previous_versions = false;
// unloading only. Also resets the flag to false. purge_previous_version
// will set the flag to true if there are any left, i.e., if there's any
// work to do for next time. This is to avoid the expensive code cache
// walk in CLDG::do_unloading().
// walk in CLDG::clean_deallocate_lists().
bool InstanceKlass::has_previous_versions_and_reset() {
bool ret = _has_previous_versions;
log_trace(redefine, class, iklass, purge)("Class unloading: has_previous_versions = %s",