< prev index next >
src/os/windows/vm/os_windows.cpp
Print this page
*** 3004,3016 ****
bytes_to_release, CALLER_PC);
os::release_memory(p_buf, bytes_to_release);
}
#ifdef ASSERT
if (should_inject_error) {
! if (TracePageSizes && Verbose) {
! tty->print_cr("Reserving pages individually failed.");
! }
}
#endif
return NULL;
}
--- 3004,3014 ----
bytes_to_release, CALLER_PC);
os::release_memory(p_buf, bytes_to_release);
}
#ifdef ASSERT
if (should_inject_error) {
! log_develop_info(pagesize)("Reserving pages individually failed.");
}
#endif
return NULL;
}
*** 3190,3202 ****
// with large pages, there are two cases where we need to use Individual Allocation
// 1) the UseLargePagesIndividualAllocation flag is set (set by default on WS2003)
// 2) NUMA Interleaving is enabled, in which case we use a different node for each page
if (UseLargePagesIndividualAllocation || UseNUMAInterleaving) {
! if (TracePageSizes && Verbose) {
! tty->print_cr("Reserving large pages individually.");
! }
char * p_buf = allocate_pages_individually(bytes, addr, flags, prot, LargePagesIndividualAllocationInjectError);
if (p_buf == NULL) {
// give an appropriate warning message
if (UseNUMAInterleaving) {
warning("NUMA large page allocation failed, UseLargePages flag ignored");
--- 3188,3199 ----
// with large pages, there are two cases where we need to use Individual Allocation
// 1) the UseLargePagesIndividualAllocation flag is set (set by default on WS2003)
// 2) NUMA Interleaving is enabled, in which case we use a different node for each page
if (UseLargePagesIndividualAllocation || UseNUMAInterleaving) {
! log_debug(pagesize)("Reserving large pages individually.");
!
char * p_buf = allocate_pages_individually(bytes, addr, flags, prot, LargePagesIndividualAllocationInjectError);
if (p_buf == NULL) {
// give an appropriate warning message
if (UseNUMAInterleaving) {
warning("NUMA large page allocation failed, UseLargePages flag ignored");
*** 3209,3221 ****
}
return p_buf;
} else {
! if (TracePageSizes && Verbose) {
! tty->print_cr("Reserving large pages in a single large chunk.");
! }
// normal policy just allocate it all at once
DWORD flag = MEM_RESERVE | MEM_COMMIT | MEM_LARGE_PAGES;
char * res = (char *)VirtualAlloc(addr, bytes, flag, prot);
if (res != NULL) {
MemTracker::record_virtual_memory_reserve_and_commit((address)res, bytes, CALLER_PC);
--- 3206,3217 ----
}
return p_buf;
} else {
! log_debug(pagesize)("Reserving large pages in a single large chunk.");
!
// normal policy just allocate it all at once
DWORD flag = MEM_RESERVE | MEM_COMMIT | MEM_LARGE_PAGES;
char * res = (char *)VirtualAlloc(addr, bytes, flag, prot);
if (res != NULL) {
MemTracker::record_virtual_memory_reserve_and_commit((address)res, bytes, CALLER_PC);
< prev index next >