8346108: [21u][BACKOUT] 8337994: [REDO] Native memory leak when not recording any events

Reviewed-by: mdoerr
This commit is contained in:
Goetz Lindenmaier
2024-12-12 16:54:21 +00:00
committed by Sergey Shelomentsev
parent ffebdca55c
commit 0d1be42c1f
2 changed files with 5 additions and 10 deletions

View File

@@ -756,15 +756,6 @@ static void write_classloaders() {
CompositeCldCallback callback(&_subsystem_callback, &ccldwwc);
do_class_loaders();
}
if (is_initial_typeset_for_chunk()) {
CldPtr bootloader = get_cld(Universe::boolArrayKlassObj());
assert(bootloader != nullptr, "invariant");
if (IS_NOT_SERIALIZED(bootloader)) {
write__classloader(_writer, bootloader);
assert(IS_SERIALIZED(bootloader), "invariant");
cldw.add(1);
}
}
_artifacts->tally(cldw);
}

View File

@@ -634,7 +634,11 @@ static void write_thread_local_buffer(JfrChunkWriter& chunkwriter, Thread* t) {
size_t JfrRecorderService::flush() {
size_t total_elements = flush_metadata(_chunkwriter);
total_elements = flush_storage(_storage, _chunkwriter);
const size_t storage_elements = flush_storage(_storage, _chunkwriter);
if (0 == storage_elements) {
return total_elements;
}
total_elements += storage_elements;
if (_string_pool.is_modified()) {
total_elements += flush_stringpool(_string_pool, _chunkwriter);
}