6661889: thread id on Linux is inconsistent in error and log outputs
Reviewed-by: dholmes, kvn
--- a/hotspot/src/os/linux/vm/os_linux.cpp Mon Jul 27 13:56:26 2015 -0700
+++ b/hotspot/src/os/linux/vm/os_linux.cpp Wed Jul 29 22:59:03 2015 -0400
@@ -653,8 +653,7 @@
OSThread* osthread = thread->osthread();
Monitor* sync = osthread->startThread_lock();
- // thread_id is kernel thread id (similar to Solaris LWP id)
- osthread->set_thread_id(os::Linux::gettid());
+ osthread->set_thread_id(os::current_thread_id());
if (UseNUMA) {
int lgrp_id = os::numa_get_group_id();
@@ -1424,7 +1423,8 @@
return n;
}
-intx os::current_thread_id() { return (intx)pthread_self(); }
+// thread_id is kernel thread id (similar to Solaris LWP id)
+intx os::current_thread_id() { return os::Linux::gettid(); }
int os::current_process_id() {
return ::getpid();
}