Mercurial > hg > truffle
comparison src/share/vm/runtime/os.cpp @ 10221:c18152e0554e
8013120: NMT: Kitchensink crashes with assert(next_region == NULL || !next_region->is_committed_region()) failed: Sanity check
Summary: Fixed NMT to deal with releasing virtual memory region when there are still committed regions within it
Reviewed-by: acorn, coleenp
author | zgu |
---|---|
date | Mon, 06 May 2013 11:15:13 -0400 |
parents | 81d1b58c078f |
children | f2110083203d |
comparison
equal
deleted
inserted
replaced
10219:9c8e2f44228d | 10221:c18152e0554e |
---|---|
1455 MemTracker::record_virtual_memory_reserve((address)result, bytes, CALLER_PC); | 1455 MemTracker::record_virtual_memory_reserve((address)result, bytes, CALLER_PC); |
1456 } | 1456 } |
1457 | 1457 |
1458 return result; | 1458 return result; |
1459 } | 1459 } |
1460 | |
1461 char* os::reserve_memory(size_t bytes, char* addr, size_t alignment_hint, | |
1462 MEMFLAGS flags) { | |
1463 char* result = pd_reserve_memory(bytes, addr, alignment_hint); | |
1464 if (result != NULL) { | |
1465 MemTracker::record_virtual_memory_reserve((address)result, bytes, CALLER_PC); | |
1466 MemTracker::record_virtual_memory_type((address)result, flags); | |
1467 } | |
1468 | |
1469 return result; | |
1470 } | |
1471 | |
1460 char* os::attempt_reserve_memory_at(size_t bytes, char* addr) { | 1472 char* os::attempt_reserve_memory_at(size_t bytes, char* addr) { |
1461 char* result = pd_attempt_reserve_memory_at(bytes, addr); | 1473 char* result = pd_attempt_reserve_memory_at(bytes, addr); |
1462 if (result != NULL) { | 1474 if (result != NULL) { |
1463 MemTracker::record_virtual_memory_reserve((address)result, bytes, CALLER_PC); | 1475 MemTracker::record_virtual_memory_reserve((address)result, bytes, CALLER_PC); |
1464 } | 1476 } |