751 |
751 |
752 // clear the shared memory region |
752 // clear the shared memory region |
753 (void)::memset((void*) mapAddress, 0, size); |
753 (void)::memset((void*) mapAddress, 0, size); |
754 |
754 |
755 // it does not go through os api, the operation has to record from here |
755 // it does not go through os api, the operation has to record from here |
756 MemTracker::record_virtual_memory_reserve((address)mapAddress, size, mtInternal, CURRENT_PC); |
756 MemTracker::record_virtual_memory_reserve_and_commit((address)mapAddress, size, CURRENT_PC, mtInternal); |
757 |
757 |
758 return mapAddress; |
758 return mapAddress; |
759 } |
759 } |
760 |
760 |
761 // release a named shared memory region |
761 // release a named shared memory region |
922 THROW_MSG(vmSymbols::java_lang_OutOfMemoryError(), |
922 THROW_MSG(vmSymbols::java_lang_OutOfMemoryError(), |
923 "Could not map PerfMemory"); |
923 "Could not map PerfMemory"); |
924 } |
924 } |
925 |
925 |
926 // it does not go through os api, the operation has to record from here |
926 // it does not go through os api, the operation has to record from here |
927 MemTracker::record_virtual_memory_reserve((address)mapAddress, size, mtInternal, CURRENT_PC); |
927 MemTracker::record_virtual_memory_reserve_and_commit((address)mapAddress, size, CURRENT_PC, mtInternal); |
928 |
928 |
929 *addr = mapAddress; |
929 *addr = mapAddress; |
930 *sizep = size; |
930 *sizep = size; |
931 |
931 |
932 if (PerfTraceMemOps) { |
932 if (PerfTraceMemOps) { |