< prev index next >
src/hotspot/os/linux/os_linux.cpp
Print this page
*** 3866,3885 ****
bool os::Linux::release_memory_special_huge_tlbfs(char* base, size_t bytes) {
return pd_release_memory(base, bytes);
}
bool os::release_memory_special(char* base, size_t bytes) {
! bool res;
! if (MemTracker::tracking_level() > NMT_minimal) {
! Tracker tkr = MemTracker::get_virtual_memory_release_tracker();
! res = os::Linux::release_memory_special_impl(base, bytes);
if (res) {
! tkr.record((address)base, bytes);
! }
!
! } else {
! res = os::Linux::release_memory_special_impl(base, bytes);
}
return res;
}
bool os::Linux::release_memory_special_impl(char* base, size_t bytes) {
--- 3866,3878 ----
bool os::Linux::release_memory_special_huge_tlbfs(char* base, size_t bytes) {
return pd_release_memory(base, bytes);
}
bool os::release_memory_special(char* base, size_t bytes) {
! bool res = os::Linux::release_memory_special_impl(base, bytes);
if (res) {
! MemTracker::record_virtual_memory_release(base, bytes);
}
return res;
}
bool os::Linux::release_memory_special_impl(char* base, size_t bytes) {
< prev index next >