diff -r f4f6ae481e1a -r 58be756e7595 src/share/vm/runtime/thread.cpp --- a/src/share/vm/runtime/thread.cpp Thu Jun 27 13:04:51 2013 -0700 +++ b/src/share/vm/runtime/thread.cpp Mon Jun 24 17:11:47 2013 +0200 @@ -312,6 +312,9 @@ void Thread::record_stack_base_and_size() { set_stack_base(os::current_stack_base()); set_stack_size(os::current_stack_size()); + if (is_Java_thread()) { + ((JavaThread*) this)->set_stack_overflow_limit(); + } // CR 7190089: on Solaris, primordial thread's stack is adjusted // in initialize_thread(). Without the adjustment, stack size is // incorrect if stack is set to unlimited (ulimit -s unlimited).