JDK-4524391 : VM crashes when profiling is enabled to get call trace
  • Type: Bug
  • Component: vm-legacy
  • Sub-Component: jvmpi
  • Affected Version: 1.4.0
  • Priority: P3
  • Status: Closed
  • Resolution: Won't Fix
  • OS: solaris_8
  • CPU: sparc
  • Submitted: 2001-11-07
  • Updated: 2001-11-12
  • Resolved: 2001-11-12
Related Reports
Relates :  
Description
Stress testing encounters various crashes when GetCallTrace tries to access
a "not yet suspended" thread's stack frame. 

This problem is caused by the fix for 4500875 and tracked by 
  4510838 self-suspend race with GetCallTrace

This bug is filed to implement a revised fix for 4500875 to workaround
4510838 for Merlin.

Comments
EVALUATION ###@###.### 2001-11-07 Back out the fix for 4500875 and change GetCallTrace to return immediately for signal thread. Name: mc120937 Date: 11/09/2001 ###@###.### 2001-11-09 NSK testing has revealed that the idea of revising the fix for 4500875 will stabilize profiling but will break debugging due to the fix for 4359247 that was in build 81 together with the fix for 4500875. With the revised fix, threads that are blocked in entering a Java monitor are not equivalent to "suspended". However, the fix for 4359247 solved the MultiBreakpoints failures by relying on wait_for_ext_suspend_completion() to tell if a thread is suspended or not and access the stack frame. With the revised fix, it makes debugging not able to access threads in the state described above and causes other failures. I will close this bug as will not fix. The problem reported in this bug will be addressed by: 4510838 self-suspend race with GetCallTrace and its related bugs. ======================================================================
11-06-2004

PUBLIC COMMENTS .
10-06-2004

SUGGESTED FIX ###@###.### 2001-11-07 See attached webrev.tar.Z
07-11-2001