OpenJDK / amber / amber
changeset 59309:e2232c851cdb
8235654: JFR leak profiler should not trace through the StringTable
Reviewed-by: stefank, coleenp, kbarrett, egahlin
author | eosterlund |
---|---|
date | Wed, 11 Dec 2019 16:45:08 +0000 |
parents | c6003f6b79af |
children | 29ca931d8f86 |
files | src/hotspot/share/classfile/stringTable.cpp src/hotspot/share/classfile/stringTable.hpp src/hotspot/share/jfr/leakprofiler/chains/rootSetClosure.cpp src/hotspot/share/jfr/leakprofiler/checkpoint/rootResolver.cpp src/hotspot/share/jfr/leakprofiler/utilities/rootType.hpp |
diffstat | 5 files changed, 0 insertions(+), 26 deletions(-) [+] |
line wrap: on
line diff
--- a/src/hotspot/share/classfile/stringTable.cpp Wed Dec 11 08:22:04 2019 -0800 +++ b/src/hotspot/share/classfile/stringTable.cpp Wed Dec 11 16:45:08 2019 +0000 @@ -383,11 +383,6 @@ } while(true); } -void StringTable::oops_do(OopClosure* f) { - assert(f != NULL, "No closure"); - OopStorageSet::string_table_weak()->oops_do(f); -} - // Concurrent work void StringTable::grow(JavaThread* jt) { StringTableHash::GrowTask gt(_local_table);
--- a/src/hotspot/share/classfile/stringTable.hpp Wed Dec 11 08:22:04 2019 -0800 +++ b/src/hotspot/share/classfile/stringTable.hpp Wed Dec 11 16:45:08 2019 +0000 @@ -94,11 +94,6 @@ // strings to this method. static void inc_dead_counter(size_t ndead) { add_items_to_clean(ndead); } - // Serially invoke "f->do_oop" on the locations of all oops in the table. - // Used by JFR leak profiler. TODO: it should find these oops through - // the WeakProcessor. - static void oops_do(OopClosure* f); - // Probing static oop lookup(Symbol* symbol); static oop lookup(const jchar* chars, int length);
--- a/src/hotspot/share/jfr/leakprofiler/chains/rootSetClosure.cpp Wed Dec 11 08:22:04 2019 -0800 +++ b/src/hotspot/share/jfr/leakprofiler/chains/rootSetClosure.cpp Wed Dec 11 16:45:08 2019 +0000 @@ -79,7 +79,6 @@ JvmtiExport::oops_do(this); SystemDictionary::oops_do(this); Management::oops_do(this); - StringTable::oops_do(this); AOTLoader::oops_do(this); }
--- a/src/hotspot/share/jfr/leakprofiler/checkpoint/rootResolver.cpp Wed Dec 11 08:22:04 2019 -0800 +++ b/src/hotspot/share/jfr/leakprofiler/checkpoint/rootResolver.cpp Wed Dec 11 16:45:08 2019 +0000 @@ -174,13 +174,6 @@ return rlc.complete(); } -bool ReferenceToRootClosure::do_string_table_roots() { - assert(!complete(), "invariant"); - ReferenceLocateClosure rlc(_callback, OldObjectRoot::_string_table, OldObjectRoot::_type_undetermined, NULL); - StringTable::oops_do(&rlc); - return rlc.complete(); -} - bool ReferenceToRootClosure::do_aot_loader_roots() { assert(!complete(), "invariant"); ReferenceLocateClosure rcl(_callback, OldObjectRoot::_aot, OldObjectRoot::_type_undetermined, NULL); @@ -228,11 +221,6 @@ return true; } - if (do_string_table_roots()) { - _complete = true; - return true; - } - if (do_aot_loader_roots()) { _complete = true; return true;
--- a/src/hotspot/share/jfr/leakprofiler/utilities/rootType.hpp Wed Dec 11 08:22:04 2019 -0800 +++ b/src/hotspot/share/jfr/leakprofiler/utilities/rootType.hpp Wed Dec 11 16:45:08 2019 +0000 @@ -41,7 +41,6 @@ _management, _jvmti, _code_cache, - _string_table, _aot, JVMCI_ONLY(_jvmci COMMA) _number_of_systems @@ -78,8 +77,6 @@ return "JVMTI"; case _code_cache: return "Code Cache"; - case _string_table: - return "String Table"; case _aot: return "AOT"; #if INCLUDE_JVMCI