JDK-6820575 : Threads suspending leads to hang
  • Type: Bug
  • Component: hotspot
  • Sub-Component: runtime
  • Affected Version: hs10
  • Priority: P3
  • Status: Resolved
  • Resolution: Duplicate
  • OS: generic
  • CPU: generic
  • Submitted: 2009-03-22
  • Updated: 2013-07-25
  • Resolved: 2013-07-25
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
Related Reports
Duplicate :  
It looks like thread suspending leads to VM hang.

dupicate of JDK-6876794 which was fix dcubed

The call stacks of thread 3 and 8 functionally the same as the ones in JDK-6876794.

Test exclude no longer needed as functionality fixed

This bug is a duplicate of JDK-6876794 below are the most involved stacks in the issue. the VMThread is blocked: dbx) thread t@3 (dbx) where current thread: t@3 =>[1] ___lwp_cond_wait(0x8125b4c, 0x8125b34, 0x0, 0x0), at 0xfeec8917 [2] __lwp_cond_wait(0x8125b4c, 0x8125b34, 0x0, 0x1), at 0xfeeb2b52 [3] os::PlatformEvent::park(0x8125b00, 0x0, 0x0, 0xfdb843ea), at 0xfdc0478d [4] ParkCommon(0x8125b00, 0x0, 0x0, 0x1), at 0xfdb84435 [5] Monitor::ILock(0x85b4cc0, 0x8125000, 0xf946cd58, 0xfdb85b72), at 0xfdb84646 [6] Monitor::lock_without_safepoint_check(0x85b4cc0, 0x8125000, 0xfea39f50, 0xfdb85c0a), at 0xfdb85b90 [7] Monitor::lock_without_safepoint_check(0x85b4cc0, 0x1, 0x3, 0xfdd59302), at 0xfdb85c6d [8] ThreadSafepointState::examine_state_of_thread(0x85b5588, 0xfeb8aca0, 0xf946ce38, 0xfdd570cf), at 0xfdd59338 [9] SafepointSynchronize::begin(0x1000000, 0x0), at 0xfdd57233 [10] VMThread::loop(0x8125000, 0x7f, 0x8125000, 0xfe014416), at 0xfe014e3d [11] VMThread::run(0x8125000, 0xfeb8aca0, 0xf946cfd8, 0xfdbf9e3c), at 0xfe0144ba [12] java_start(0x8125000), at 0xfdbf9f03 [13] _thr_setup(0xfc850a00), at 0xfeec57d5 [14] _lwp_start(), at 0xfeec5ac0 By this thread (dbx) thread t@8 current thread: t@8 =>[1] ___lwp_cond_wait(0x814eb4c, 0x814eb34, 0x0, 0x0), at 0xfeec8917 [2] __lwp_cond_wait(0x814eb4c, 0x814eb34, 0x0, 0x1), at 0xfeeb2b52 [3] os::PlatformEvent::park(0x814eb00, 0x0, 0x0, 0xfdb843ea), at 0xfdc0478d [4] ParkCommon(0x814eb00, 0x0, 0x0, 0x1), at 0xfdb84435 [5] Monitor::ILock(0x807a6a8, 0x814d800, 0xfe321776, 0xfdb85b72), at 0xfdb84646 [6] Monitor::lock_without_safepoint_check(0x807a6a8, 0x814d800, 0xf12c7ac8, 0xfdb85c0a), at 0xfdb85b90 [7] Monitor::lock_without_safepoint_check(0x807a6a8, 0xfeb8aca0, 0xf12c7af8, 0xfdd57f97), at 0xfdb85c6d [8] SafepointSynchronize::block(0x814d800, 0xc, 0xf12c7b38, 0xfdef94b9), at 0xfdd58115 [9] JavaThread::check_safepoint_and_suspend_for_native_trans(0x814d800, 0xfeb8aca0, 0xf12c7ca8, 0xfcf5d6a6), at 0xfdef95ec [10] ciEnv::get_method_by_index(0xf12ca9d0, 0x8213538, 0xb00, 0xb6), at 0xfcf5d7c5 [11] ciBytecodeStream::get_method(0xf12c7d60, 0xf12c7d2f, 0xabababab, 0xfd2c5c69), at 0xfcfbdb03 [12] GraphKit::compute_stack_effects(0xf12c82c0, 0xf12c7f28, 0xf12c7f2c, 0xfd2c3c11), at 0xfd2c623c [13] GraphKit::add_safepoint_edges(0xf12c82c0, 0x8156068, 0x1, 0xfd2d206e), at 0xfd2c3cd5 [14] GraphKit::make_runtime_call(0xf12c82c0, 0x2c, 0x82e7b44, 0xf96aa680, 0xfe4e7c20, 0x0, 0x83a12c8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf12c8118, 0xfd2ced78), at 0xfd2d2cc4 [15] GraphKit::uncommon_trap(0xf12c82c0, 0xfffffff6, 0x0, 0x0, 0x1, 0x0, 0x10d, 0x1), at 0xfd2cedac [16] GraphKit::builtin_throw(0xf12c82c0, 0x1, 0x0, 0x1), at 0xfd2c11b1 [17] GraphKit::null_check_common(0xf12c82c0, 0x83a0568, 0xc, 0x0, 0x0, 0x8223678, 0x10, 0xfdc3eebd), at 0xfd2c7af2 [18] Parse::create_entry_map(0xf12c8390, 0x83fca70, 0x8245c74, 0xfdc367d6), at 0xfdc3f013 [19] Parse::Parse(0xf12c8390, 0x8223678, 0x82173d0, 0xbf800000), at 0xfdc36f96 [20] ParseGenerator::generate(0x8302738, 0x8223678, 0x1, 0xfd1ecb66), at 0xfcf04afa [21] Parse::do_call(0xf12c9d10, 0xfeb8aca0, 0xf12c9b58, 0xfdc63c19), at 0xfd1ecf75 [22] Parse::do_one_bytecode(0xf12c9d10), at 0xfdc63e04 [23] Parse::do_one_block(0xf12c9d10, 0x8153028, 0xf12c9c18, 0xfdc3783d), at 0xfdc41e8b [24] Parse::do_all_blocks(0xf12c9d10, 0xf12c9d10, 0xf12ca350, 0xfdc367d6), at 0xfdc37beb [25] Parse::Parse(0xf12c9d10, 0x83fc7e8, 0x82134c0, 0x3f800000), at 0xfdc3720f [26] ParseGenerator::generate(0x82ffdb8, 0x83fc7e8, 0x82e7800, 0x1), at 0xfcf04afa [27] Compile::Compile(0xf12ca350, 0xf12ca9d0, 0x81381b8, 0x82134c0, 0xffffffff, 0x1, 0x0, 0xfcf0386d), at 0xfd090c6f [28] C2Compiler::compile_method(0x81381b8, 0xf12ca9d0, 0x82134c0, 0xffffffff), at 0xfcf0391f [29] CompileBroker::invoke_compiler_on_method(0x8410e18, 0x814d800, 0xf12cab54, 0xfd0a589c), at 0xfd0a7c7f [30] CompileBroker::compiler_thread_loop(0x814d800), at 0xfd0a6085 [31] compiler_thread_entry(0x814d800), at 0xfdefe2dd [32] JavaThread::thread_main_inner(0x814d800, 0xab, 0x3ec, 0xfdef429a), at 0xfdef490f [33] JavaThread::run(0x814d800, 0xfeb8aca0, 0xf12cafd8, 0xfdbf9e3c), at 0xfdef4609 [34] java_start(0x814d800), at 0xfdbf9f03 [35] _thr_setup(0xfc853200), at 0xfeec57d5 [36] _lwp_start(), at 0xfeec5ac0