--- a/src/hotspot/os/solaris/os_solaris.cpp Fri May 18 12:45:05 2018 -0700
+++ b/src/hotspot/os/solaris/os_solaris.cpp Fri May 18 15:56:42 2018 -0400
@@ -2124,7 +2124,7 @@
memset(ourSigFlags, 0, sizeof(int) * (Maxsignum + 1));
}
-void os::signal_init_pd() {
+static void jdk_misc_signal_init() {
// Initialize signal semaphore
sig_sem = new Semaphore();
}
@@ -2134,7 +2134,7 @@
Atomic::inc(&pending_signals[sig]);
sig_sem->signal();
} else {
- // Signal thread is not created with ReduceSignalUsage and signal_init_pd
+ // Signal thread is not created with ReduceSignalUsage and jdk_misc_signal_init
// initialization isn't called.
assert(ReduceSignalUsage, "signal semaphore should be created");
}
@@ -4243,6 +4243,10 @@
Solaris::signal_sets_init();
Solaris::init_signal_mem();
Solaris::install_signal_handlers();
+ // Initialize data for jdk.internal.misc.Signal
+ if (!ReduceSignalUsage) {
+ jdk_misc_signal_init();
+ }
// initialize synchronization primitives to use either thread or
// lwp synchronization (controlled by UseLWPSynchronization)