< prev index next >
src/hotspot/share/classfile/classLoaderStats.cpp
Print this page
rev 60538 : imported patch jep387-all.patch
*** 24,33 ****
--- 24,34 ----
#include "precompiled.hpp"
#include "classfile/classLoaderData.inline.hpp"
#include "classfile/classLoaderDataGraph.hpp"
#include "classfile/classLoaderStats.hpp"
+ #include "memory/metaspace.hpp"
#include "oops/objArrayKlass.hpp"
#include "oops/oop.inline.hpp"
#include "utilities/globalDefinitions.hpp"
*** 78,96 ****
}
_total_classes += csc._num_classes;
ClassLoaderMetaspace* ms = cld->metaspace_or_null();
if (ms != NULL) {
if(cld->has_class_mirror_holder()) {
! cls->_hidden_chunk_sz += ms->allocated_chunks_bytes();
! cls->_hidden_block_sz += ms->allocated_blocks_bytes();
} else {
! cls->_chunk_sz = ms->allocated_chunks_bytes();
! cls->_block_sz = ms->allocated_blocks_bytes();
}
! _total_chunk_sz += ms->allocated_chunks_bytes();
! _total_block_sz += ms->allocated_blocks_bytes();
}
}
// Handles the difference in pointer width on 32 and 64 bit platforms
--- 79,99 ----
}
_total_classes += csc._num_classes;
ClassLoaderMetaspace* ms = cld->metaspace_or_null();
if (ms != NULL) {
+ size_t used_bytes, capacity_bytes;
+ ms->calculate_jfr_stats(&used_bytes, &capacity_bytes);
if(cld->has_class_mirror_holder()) {
! cls->_hidden_chunk_sz += capacity_bytes;
! cls->_hidden_block_sz += used_bytes;
} else {
! cls->_chunk_sz = capacity_bytes;
! cls->_block_sz = used_bytes;
}
! _total_chunk_sz += capacity_bytes;
! _total_block_sz += used_bytes;
}
}
// Handles the difference in pointer width on 32 and 64 bit platforms
< prev index next >