--- old/src/os/solaris/vm/os_solaris.cpp 2015-11-04 23:03:23.819286909 -0500 +++ new/src/os/solaris/vm/os_solaris.cpp 2015-11-04 23:03:22.239197861 -0500 @@ -733,6 +733,9 @@ int prio; Thread* thread = (Thread*)thread_addr; + + thread->initialize_thread_current(); + OSThread* osthr = thread->osthread(); osthr->set_lwp_id(_lwp_self()); // Store lwp in case we are bound @@ -5615,7 +5618,7 @@ // fork is async-safe, fork1 is not so can't use in signal handler pid_t pid; - Thread* t = ThreadLocalStorage::get_thread_slow(); + Thread* t = Thread::current(); if (t != NULL && t->is_inside_signal_handler()) { pid = fork(); } else {