changeset 53675:4b427f2653f1

8212207: runtime/InternalApi/ThreadCpuTimesDeadlock.java crashes with SEGV in pthread_getcpuclockid+0x0 Summary: skip non-JavaThreads that have not reached a minimal initialization point - setting their stack size Reviewed-by: kbarrett, stuefe
author dholmes
date Tue, 27 Nov 2018 22:02:52 -0500
parents 19b15ff2576b
children 1ffff60c9f54
files src/hotspot/share/services/management.cpp
diffstat 1 files changed, 6 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/src/hotspot/share/services/management.cpp	Tue Nov 27 21:20:16 2018 -0500
+++ b/src/hotspot/share/services/management.cpp	Tue Nov 27 22:02:52 2018 -0500
@@ -1645,6 +1645,12 @@
     return;
   }
 
+  // NonJavaThread instances may not be fully initialized yet, so we need to
+  // skip any that aren't - check for zero stack_size()
+  if (!thread->is_Java_thread() && thread->stack_size() == 0) {
+    return;
+  }
+
   if (_count >= _names_len || _count >= _times_len) {
     // skip if the result array is not big enough
     return;