--- old/src/hotspot/os/solaris/os_solaris.cpp 2017-11-03 11:29:23.477435778 -0700 +++ new/src/hotspot/os/solaris/os_solaris.cpp 2017-11-03 11:29:23.202438164 -0700 @@ -2581,6 +2581,17 @@ return 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"); + char* result = pd_attempt_reserve_memory_at(bytes, requested_addr); + if (result != NULL) { + if (replace_existing_mapping_with_file_mapping(result, bytes, file_desc) == NULL) { + vm_exit_during_initialization(err_msg("Error in mapping Java heap at the given filesystem directory")); + } + } + return result; +} + // Reserve memory at an arbitrary address, only if that area is // available (and not reserved for something else).