< prev index next >
src/hotspot/share/memory/universe.cpp
Print this page
*** 805,821 ****
size_t total_reserved = align_up(heap_size, alignment);
assert(!UseCompressedOops || (total_reserved <= (OopEncodingHeapMax - os::vm_page_size())),
"heap size is too big for compressed oops");
! // When AllocateOldGenAt is set, we cannot use largepages for entire heap memory.
! // Only young gen which is allocated in dram can use large pages, but we currently don't support that.
! bool use_large_pages = (AllocateOldGenAt != NULL) && UseLargePages && is_aligned(alignment, os::large_page_size());
assert(!UseLargePages
|| UseParallelGC
|| use_large_pages, "Wrong alignment to use large pages");
// Now create the space.
ReservedHeapSpace total_rs(total_reserved, alignment, use_large_pages, AllocateHeapAt);
if (total_rs.is_reserved()) {
assert((total_reserved == total_rs.size()) && ((uintptr_t)total_rs.base() % alignment == 0),
--- 805,823 ----
size_t total_reserved = align_up(heap_size, alignment);
assert(!UseCompressedOops || (total_reserved <= (OopEncodingHeapMax - os::vm_page_size())),
"heap size is too big for compressed oops");
! bool use_large_pages = UseLargePages && is_aligned(alignment, os::large_page_size());
assert(!UseLargePages
|| UseParallelGC
|| use_large_pages, "Wrong alignment to use large pages");
+ // When AllocateOldGenAt is set, we cannot use largepages for entire heap memory.
+ // Only young gen which is allocated in dram can use large pages, but we currently don't support that.
+ use_large_pages = (AllocateOldGenAt != NULL) ? false : use_large_pages;
+
// Now create the space.
ReservedHeapSpace total_rs(total_reserved, alignment, use_large_pages, AllocateHeapAt);
if (total_rs.is_reserved()) {
assert((total_reserved == total_rs.size()) && ((uintptr_t)total_rs.base() % alignment == 0),
< prev index next >