< prev index next >

src/hotspot/os/windows/os_windows.cpp

Print this page

        

*** 2890,2906 **** vm_exit_during_initialization(err_msg("Malloc failed during creation of backing file for heap (%s)", os::strerror(errno))); return -1; } (void)strncpy(fullname, dir, strlen(dir)+1); ! (void)strncat(fullname, name_template, strlen(name_template); os::native_path(fullname); char *path = _mktemp(fullname); if (path == NULL) { ! warning("_mktemp could not create file name from template (%s)", os::strerror(errno)); os::free(fullname); return -1; } int fd = _open(path, O_RDWR | O_CREAT | O_TEMPORARY | O_EXCL, S_IWRITE | S_IREAD); --- 2890,2906 ---- vm_exit_during_initialization(err_msg("Malloc failed during creation of backing file for heap (%s)", os::strerror(errno))); return -1; } (void)strncpy(fullname, dir, strlen(dir)+1); ! (void)strncat(fullname, name_template, strlen(name_template)); os::native_path(fullname); char *path = _mktemp(fullname); if (path == NULL) { ! warning("_mktemp could not create file name from template %s (%s)", fullname, os::strerror(errno)); os::free(fullname); return -1; } int fd = _open(path, O_RDWR | O_CREAT | O_TEMPORARY | O_EXCL, S_IWRITE | S_IREAD);
*** 2944,2969 **** release_memory(base, size); return map_memory_to_dax_file(base, size, fd); } - char* os::attempt_reserve_memory_at(size_t bytes, char* addr, int file_desc) { - char* result = NULL; - if (file_desc != -1) { - result = map_memory_to_dax_file(addr, bytes, file_desc); - if (result != NULL) { - MemTracker::record_virtual_memory_reserve_and_commit((address)result, bytes, CALLER_PC); - } - } else { - result = pd_attempt_reserve_memory_at(bytes, addr); - if (result != NULL) { - MemTracker::record_virtual_memory_reserve((address)result, bytes, CALLER_PC); - } - } - return result; - } - // On win32, one cannot release just a part of reserved memory, it's an // all or nothing deal. When we split a reservation, we must break the // reservation into two reservations. void os::pd_split_reserved_memory(char *base, size_t size, size_t split, bool realloc) { --- 2944,2953 ----
*** 3049,3058 **** --- 3033,3047 ---- // Windows os::reserve_memory() fails of the requested address range is // not avilable. return reserve_memory(bytes, requested_addr); } + char* os::pd_attempt_reserve_memory_at(size_t bytes, char* requested_addr, int file_desc) { + assert(file_desc >= 0, "file_desc is not valid"); + return map_memory_to_dax_file(requested_addr, bytes, file_desc); + } + size_t os::large_page_size() { return _large_page_size; } bool os::can_commit_large_page_memory() {
< prev index next >