< prev index next >

src/hotspot/os/aix/os_aix.cpp

Print this page
rev 52189 : [mq]: tinit

*** 774,789 **** // create new thread // Thread start routine for all newly created threads static void *thread_native_entry(Thread *thread) { ! // find out my own stack dimensions ! { ! // actually, this should do exactly the same as thread->record_stack_base_and_size... ! thread->set_stack_base(os::current_stack_base()); ! thread->set_stack_size(os::current_stack_size()); ! } const pthread_t pthread_id = ::pthread_self(); const tid_t kernel_thread_id = ::thread_self(); LogTarget(Info, os, thread) lt; --- 774,784 ---- // create new thread // Thread start routine for all newly created threads static void *thread_native_entry(Thread *thread) { ! thread->record_stack_base_and_size(); const pthread_t pthread_id = ::pthread_self(); const tid_t kernel_thread_id = ::thread_self(); LogTarget(Info, os, thread) lt;
*** 832,845 **** os::Aix::init_thread_fpu_state(); assert(osthread->get_state() == RUNNABLE, "invalid os thread state"); // Call one more level start routine. ! thread->run(); ! ! log_info(os, thread)("Thread finished (tid: " UINTX_FORMAT ", kernel thread id: " UINTX_FORMAT ").", ! os::current_thread_id(), (uintx) kernel_thread_id); // If a thread has not deleted itself ("delete this") as part of its // termination sequence, we have to ensure thread-local-storage is // cleared before we actually terminate. No threads should ever be // deleted asynchronously with respect to their termination. --- 827,837 ---- os::Aix::init_thread_fpu_state(); assert(osthread->get_state() == RUNNABLE, "invalid os thread state"); // Call one more level start routine. ! thread->call_run(); // If a thread has not deleted itself ("delete this") as part of its // termination sequence, we have to ensure thread-local-storage is // cleared before we actually terminate. No threads should ever be // deleted asynchronously with respect to their termination.
< prev index next >