--- old/src/hotspot/os/solaris/os_solaris.cpp 2018-05-17 15:07:26.858431736 -0400 +++ new/src/hotspot/os/solaris/os_solaris.cpp 2018-05-17 15:07:26.503398788 -0400 @@ -1871,6 +1871,8 @@ return buf; } +void signalHandler(int sig, siginfo_t* info, void* ucVoid); + static void print_signal_handler(outputStream* st, int sig, char* buf, size_t buflen) { struct sigaction sa; @@ -3683,7 +3685,7 @@ int abort_if_unrecognized); -void signalHandler(int sig, siginfo_t* info, void* ucVoid) { +static void signalHandler(int sig, siginfo_t* info, void* ucVoid) { int orig_errno = errno; // Preserve errno value over signal handler. JVM_handle_solaris_signal(sig, info, ucVoid, true); errno = orig_errno; @@ -4249,6 +4251,10 @@ Solaris::signal_sets_init(); Solaris::init_signal_mem(); Solaris::install_signal_handlers(); + // Initialize data for jdk.internal.misc.Signal + if (!ReduceSignalUsage) { + signal_init_pd(); + } // initialize synchronization primitives to use either thread or // lwp synchronization (controlled by UseLWPSynchronization)