1.1 --- a/src/os/bsd/vm/os_bsd.cpp Fri Mar 08 08:22:18 2013 -0800 1.2 +++ b/src/os/bsd/vm/os_bsd.cpp Fri Mar 08 17:14:22 2013 -0800 1.3 @@ -57,6 +57,7 @@ 1.4 #include "runtime/threadCritical.hpp" 1.5 #include "runtime/timer.hpp" 1.6 #include "services/attachListener.hpp" 1.7 +#include "services/memTracker.hpp" 1.8 #include "services/runtimeService.hpp" 1.9 #include "utilities/decoder.hpp" 1.10 #include "utilities/defaultStream.hpp" 1.11 @@ -2275,13 +2276,25 @@ 1.12 return NULL; 1.13 } 1.14 1.15 + // The memory is committed 1.16 + address pc = CALLER_PC; 1.17 + MemTracker::record_virtual_memory_reserve((address)addr, bytes, pc); 1.18 + MemTracker::record_virtual_memory_commit((address)addr, bytes, pc); 1.19 + 1.20 return addr; 1.21 } 1.22 1.23 bool os::release_memory_special(char* base, size_t bytes) { 1.24 // detaching the SHM segment will also delete it, see reserve_memory_special() 1.25 int rslt = shmdt(base); 1.26 - return rslt == 0; 1.27 + if (rslt == 0) { 1.28 + MemTracker::record_virtual_memory_uncommit((address)base, bytes); 1.29 + MemTracker::record_virtual_memory_release((address)base, bytes); 1.30 + return true; 1.31 + } else { 1.32 + return false; 1.33 + } 1.34 + 1.35 } 1.36 1.37 size_t os::large_page_size() {