8212207: runtime/InternalApi/ThreadCpuTimesDeadlock.java crashes with SEGV in pthread_getcpuclockid+0x0

Skip non-JavaThreads that have not reached a minimal initialization point - setting their stack size

Reviewed-by: kbarrett, stuefe
This commit is contained in:
David Holmes 2018-11-27 22:02:52 -05:00
parent cb861252d7
commit 2bcaf34726

View File

@ -1645,6 +1645,12 @@ void ThreadTimesClosure::do_thread(Thread* thread) {
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;