You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by "Alexey Varlamov (JIRA)" <ji...@apache.org> on 2008/06/11 08:12:45 UTC
[jira] Created: (HARMONY-5870) [drlvm] hythread_suspend_all hangs
sometimes
[drlvm] hythread_suspend_all hangs sometimes
--------------------------------------------
Key: HARMONY-5870
URL: https://issues.apache.org/jira/browse/HARMONY-5870
Project: Harmony
Issue Type: Bug
Components: DRLVM
Affects Versions: 5.0M7
Environment: WinXP PentiumM (T42p laptop)
Reporter: Alexey Varlamov
Attachments: ConcurrentExceptionTest.java
I've tried ConcurrentExceptionTest from http://www.javaspecialists.eu/archive/Issue162.html and it hangs (and keeps CPU 100% busy) each ~3rd run on my laptop. I could not reproduce it on server machines though.
Backtrace of the busy thread is always this:
ntdll.dll!7c90eb94()
ntdll.dll!7c90ea53()
kernel32.dll!7c832998()
hythr.dll!_apr_winapi_SwitchToThread() + 0x28 C
hythr.dll!_apr_thread_yield@0() + 0x11 C
> hythr.dll!hythread_suspend_all(HyThread * * iter_ptr=0x2316fb50, HyThreadGroup * group=0x00000000) Line 397 + 0x21 C
harmonyvm.dll!stop_the_world_root_set_enumeration() Line 91 + 0x11 C++
gc_gen_uncomp.dll!gc_prepare_rootset(GC * gc=0x0048a6b0) Line 117 C++
gc_gen_uncomp.dll!gc_reclaim_heap(GC * gc=0x00000001, unsigned int gc_cause=1) Line 198 C++
gc_gen_uncomp.dll!sspace_alloc(unsigned int size=24, Allocator * allocator=0x22dc5b20) Line 61 C++
gc_gen_uncomp.dll!gc_alloc(unsigned int size=584696256, unsigned int ah=5368400, void * unused_gc_tls=0x22d9c294) Line 105 + 0x6 C++
harmonyvm.dll!vm_malloc_with_thread_pointer(unsigned int size=588709188, unsigned int ah=588709456, void * tp=0x12a6726c) Line 1755 + 0x15 C++
harmonyvm.dll!compile_protect_arguments(Method * method=0x00000000, GcFrame * gc=0x22d9c1c0) Line 124 C++
harmonyvm.dll!m2n_free_local_handles() Line 263 C++
ntdll.dll!7c910833()
ntdll.dll!7c910833()
kernel32.dll!7c812c5b()
kernel32.dll!7c812c87()
ntdll.dll!7c9105c8()
harmonyvm.dll!JIT_execute_method_default(void * jit=0x00000000, _jmethodID * methodID=0x00000056, jvalue * return_value=0x2316ff38, jvalue * args=0x2316ff04) Line 295 + 0x8 C++
em.dll!DrlEMImpl::executeMethod(_jmethodID * meth=0x22b2d698, jvalue * return_value=0x2316ff38, jvalue * args=0x2316ff04) Line 522 + 0x14 C++
em.dll!ExecuteMethod(_jmethodID * meth=0x22b2d698, jvalue * return_value=0x2316ff38, jvalue * args=0x2316ff04) Line 40 C++
harmonyvm.dll!vm_execute_java_method_array(_jmethodID * method=0x22b2d698, jvalue * result=0x2316ff38, jvalue * args=0x2316ff04) Line 56 + 0x19 C++
harmonyvm.dll!call_method_no_ref_result(JNIEnv_External * jni_env=0x22dc69b8, _jobject * obj=0x7c901005, _jmethodID * methodID=0x7c90eb94, jvalue * args=0x00000000, jvalue * result=0x2316ff38, int non_virtual=588708620) Line 189 + 0xe C++
harmonyvm.dll!CallVoidMethodA(JNIEnv_External * jni_env=0x22dc69b8, _jobject * obj=0x22dc5280, _jmethodID * methodID=0x22b2d698, jvalue * args=0x00000000) Line 230 + 0x20 C++
harmonyvm.dll!jthread_wrapper_start_proc(void * arg=0x22dc69b8) Line 166 C++
msvcr71.dll!01f59565()
kernel32.dll!7c80b683()
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Updated: (HARMONY-5870) [drlvm][thread] hythread_suspend_all
hangs sometimes
Posted by "Alexey Varlamov (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HARMONY-5870?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Alexey Varlamov updated HARMONY-5870:
-------------------------------------
Description:
I've tried ConcurrentExceptionTest from http://www.javaspecialists.eu/archive/Issue162.html and it hangs (and keeps CPU 100% busy) each ~3rd run on my laptop. I could not reproduce it on server machines though.
Backtrace of the busy thread is always like this:
ntdll.dll!7c90eb94()
ntdll.dll!7c90ea53()
kernel32.dll!7c832998()
hythr.dll!_apr_winapi_SwitchToThread() + 0x28 C
hythr.dll!_apr_thread_yield@0() + 0x11 C
> hythr.dll!hythread_suspend_all(HyThread * * iter_ptr=0x2316fb50, HyThreadGroup * group=0x00000000) Line 397 + 0x21 C
harmonyvm.dll!stop_the_world_root_set_enumeration() Line 91 + 0x11 C++
gc_gen_uncomp.dll!gc_prepare_rootset(GC * gc=0x0048a6b0) Line 117 C++
gc_gen_uncomp.dll!gc_reclaim_heap(GC * gc=0x00000001, unsigned int gc_cause=1) Line 198 C++
gc_gen_uncomp.dll!sspace_alloc(unsigned int size=24, Allocator * allocator=0x22dc5b20) Line 61 C++
gc_gen_uncomp.dll!gc_alloc(unsigned int size=584696256, unsigned int ah=5368400, void * unused_gc_tls=0x22d9c294) Line 105 + 0x6 C++
harmonyvm.dll!vm_malloc_with_thread_pointer(unsigned int size=588709188, unsigned int ah=588709456, void * tp=0x12a6726c) Line 1755 + 0x15 C++
harmonyvm.dll!compile_protect_arguments(Method * method=0x00000000, GcFrame * gc=0x22d9c1c0) Line 124 C++
harmonyvm.dll!m2n_free_local_handles() Line 263 C++
ntdll.dll!7c910833()
ntdll.dll!7c910833()
kernel32.dll!7c812c5b()
kernel32.dll!7c812c87()
ntdll.dll!7c9105c8()
harmonyvm.dll!JIT_execute_method_default(void * jit=0x00000000, _jmethodID * methodID=0x00000056, jvalue * return_value=0x2316ff38, jvalue * args=0x2316ff04) Line 295 + 0x8 C++
em.dll!DrlEMImpl::executeMethod(_jmethodID * meth=0x22b2d698, jvalue * return_value=0x2316ff38, jvalue * args=0x2316ff04) Line 522 + 0x14 C++
em.dll!ExecuteMethod(_jmethodID * meth=0x22b2d698, jvalue * return_value=0x2316ff38, jvalue * args=0x2316ff04) Line 40 C++
harmonyvm.dll!vm_execute_java_method_array(_jmethodID * method=0x22b2d698, jvalue * result=0x2316ff38, jvalue * args=0x2316ff04) Line 56 + 0x19 C++
harmonyvm.dll!call_method_no_ref_result(JNIEnv_External * jni_env=0x22dc69b8, _jobject * obj=0x7c901005, _jmethodID * methodID=0x7c90eb94, jvalue * args=0x00000000, jvalue * result=0x2316ff38, int non_virtual=588708620) Line 189 + 0xe C++
harmonyvm.dll!CallVoidMethodA(JNIEnv_External * jni_env=0x22dc69b8, _jobject * obj=0x22dc5280, _jmethodID * methodID=0x22b2d698, jvalue * args=0x00000000) Line 230 + 0x20 C++
harmonyvm.dll!jthread_wrapper_start_proc(void * arg=0x22dc69b8) Line 166 C++
msvcr71.dll!01f59565()
kernel32.dll!7c80b683()
was:
I've tried ConcurrentExceptionTest from http://www.javaspecialists.eu/archive/Issue162.html and it hangs (and keeps CPU 100% busy) each ~3rd run on my laptop. I could not reproduce it on server machines though.
Backtrace of the busy thread is always this:
ntdll.dll!7c90eb94()
ntdll.dll!7c90ea53()
kernel32.dll!7c832998()
hythr.dll!_apr_winapi_SwitchToThread() + 0x28 C
hythr.dll!_apr_thread_yield@0() + 0x11 C
> hythr.dll!hythread_suspend_all(HyThread * * iter_ptr=0x2316fb50, HyThreadGroup * group=0x00000000) Line 397 + 0x21 C
harmonyvm.dll!stop_the_world_root_set_enumeration() Line 91 + 0x11 C++
gc_gen_uncomp.dll!gc_prepare_rootset(GC * gc=0x0048a6b0) Line 117 C++
gc_gen_uncomp.dll!gc_reclaim_heap(GC * gc=0x00000001, unsigned int gc_cause=1) Line 198 C++
gc_gen_uncomp.dll!sspace_alloc(unsigned int size=24, Allocator * allocator=0x22dc5b20) Line 61 C++
gc_gen_uncomp.dll!gc_alloc(unsigned int size=584696256, unsigned int ah=5368400, void * unused_gc_tls=0x22d9c294) Line 105 + 0x6 C++
harmonyvm.dll!vm_malloc_with_thread_pointer(unsigned int size=588709188, unsigned int ah=588709456, void * tp=0x12a6726c) Line 1755 + 0x15 C++
harmonyvm.dll!compile_protect_arguments(Method * method=0x00000000, GcFrame * gc=0x22d9c1c0) Line 124 C++
harmonyvm.dll!m2n_free_local_handles() Line 263 C++
ntdll.dll!7c910833()
ntdll.dll!7c910833()
kernel32.dll!7c812c5b()
kernel32.dll!7c812c87()
ntdll.dll!7c9105c8()
harmonyvm.dll!JIT_execute_method_default(void * jit=0x00000000, _jmethodID * methodID=0x00000056, jvalue * return_value=0x2316ff38, jvalue * args=0x2316ff04) Line 295 + 0x8 C++
em.dll!DrlEMImpl::executeMethod(_jmethodID * meth=0x22b2d698, jvalue * return_value=0x2316ff38, jvalue * args=0x2316ff04) Line 522 + 0x14 C++
em.dll!ExecuteMethod(_jmethodID * meth=0x22b2d698, jvalue * return_value=0x2316ff38, jvalue * args=0x2316ff04) Line 40 C++
harmonyvm.dll!vm_execute_java_method_array(_jmethodID * method=0x22b2d698, jvalue * result=0x2316ff38, jvalue * args=0x2316ff04) Line 56 + 0x19 C++
harmonyvm.dll!call_method_no_ref_result(JNIEnv_External * jni_env=0x22dc69b8, _jobject * obj=0x7c901005, _jmethodID * methodID=0x7c90eb94, jvalue * args=0x00000000, jvalue * result=0x2316ff38, int non_virtual=588708620) Line 189 + 0xe C++
harmonyvm.dll!CallVoidMethodA(JNIEnv_External * jni_env=0x22dc69b8, _jobject * obj=0x22dc5280, _jmethodID * methodID=0x22b2d698, jvalue * args=0x00000000) Line 230 + 0x20 C++
harmonyvm.dll!jthread_wrapper_start_proc(void * arg=0x22dc69b8) Line 166 C++
msvcr71.dll!01f59565()
kernel32.dll!7c80b683()
Summary: [drlvm][thread] hythread_suspend_all hangs sometimes (was: [drlvm] hythread_suspend_all hangs sometimes)
> [drlvm][thread] hythread_suspend_all hangs sometimes
> ----------------------------------------------------
>
> Key: HARMONY-5870
> URL: https://issues.apache.org/jira/browse/HARMONY-5870
> Project: Harmony
> Issue Type: Bug
> Components: DRLVM
> Affects Versions: 5.0M7
> Environment: WinXP PentiumM (T42p laptop)
> Reporter: Alexey Varlamov
> Attachments: ConcurrentExceptionTest.java
>
>
> I've tried ConcurrentExceptionTest from http://www.javaspecialists.eu/archive/Issue162.html and it hangs (and keeps CPU 100% busy) each ~3rd run on my laptop. I could not reproduce it on server machines though.
> Backtrace of the busy thread is always like this:
> ntdll.dll!7c90eb94()
> ntdll.dll!7c90ea53()
> kernel32.dll!7c832998()
> hythr.dll!_apr_winapi_SwitchToThread() + 0x28 C
> hythr.dll!_apr_thread_yield@0() + 0x11 C
> > hythr.dll!hythread_suspend_all(HyThread * * iter_ptr=0x2316fb50, HyThreadGroup * group=0x00000000) Line 397 + 0x21 C
> harmonyvm.dll!stop_the_world_root_set_enumeration() Line 91 + 0x11 C++
> gc_gen_uncomp.dll!gc_prepare_rootset(GC * gc=0x0048a6b0) Line 117 C++
> gc_gen_uncomp.dll!gc_reclaim_heap(GC * gc=0x00000001, unsigned int gc_cause=1) Line 198 C++
> gc_gen_uncomp.dll!sspace_alloc(unsigned int size=24, Allocator * allocator=0x22dc5b20) Line 61 C++
> gc_gen_uncomp.dll!gc_alloc(unsigned int size=584696256, unsigned int ah=5368400, void * unused_gc_tls=0x22d9c294) Line 105 + 0x6 C++
> harmonyvm.dll!vm_malloc_with_thread_pointer(unsigned int size=588709188, unsigned int ah=588709456, void * tp=0x12a6726c) Line 1755 + 0x15 C++
> harmonyvm.dll!compile_protect_arguments(Method * method=0x00000000, GcFrame * gc=0x22d9c1c0) Line 124 C++
> harmonyvm.dll!m2n_free_local_handles() Line 263 C++
> ntdll.dll!7c910833()
> ntdll.dll!7c910833()
> kernel32.dll!7c812c5b()
> kernel32.dll!7c812c87()
> ntdll.dll!7c9105c8()
> harmonyvm.dll!JIT_execute_method_default(void * jit=0x00000000, _jmethodID * methodID=0x00000056, jvalue * return_value=0x2316ff38, jvalue * args=0x2316ff04) Line 295 + 0x8 C++
> em.dll!DrlEMImpl::executeMethod(_jmethodID * meth=0x22b2d698, jvalue * return_value=0x2316ff38, jvalue * args=0x2316ff04) Line 522 + 0x14 C++
> em.dll!ExecuteMethod(_jmethodID * meth=0x22b2d698, jvalue * return_value=0x2316ff38, jvalue * args=0x2316ff04) Line 40 C++
> harmonyvm.dll!vm_execute_java_method_array(_jmethodID * method=0x22b2d698, jvalue * result=0x2316ff38, jvalue * args=0x2316ff04) Line 56 + 0x19 C++
> harmonyvm.dll!call_method_no_ref_result(JNIEnv_External * jni_env=0x22dc69b8, _jobject * obj=0x7c901005, _jmethodID * methodID=0x7c90eb94, jvalue * args=0x00000000, jvalue * result=0x2316ff38, int non_virtual=588708620) Line 189 + 0xe C++
> harmonyvm.dll!CallVoidMethodA(JNIEnv_External * jni_env=0x22dc69b8, _jobject * obj=0x22dc5280, _jmethodID * methodID=0x22b2d698, jvalue * args=0x00000000) Line 230 + 0x20 C++
> harmonyvm.dll!jthread_wrapper_start_proc(void * arg=0x22dc69b8) Line 166 C++
> msvcr71.dll!01f59565()
> kernel32.dll!7c80b683()
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Updated: (HARMONY-5870) [drlvm] hythread_suspend_all hangs
sometimes
Posted by "Alexey Varlamov (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HARMONY-5870?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Alexey Varlamov updated HARMONY-5870:
-------------------------------------
Attachment: ConcurrentExceptionTest.java
> [drlvm] hythread_suspend_all hangs sometimes
> --------------------------------------------
>
> Key: HARMONY-5870
> URL: https://issues.apache.org/jira/browse/HARMONY-5870
> Project: Harmony
> Issue Type: Bug
> Components: DRLVM
> Affects Versions: 5.0M7
> Environment: WinXP PentiumM (T42p laptop)
> Reporter: Alexey Varlamov
> Attachments: ConcurrentExceptionTest.java
>
>
> I've tried ConcurrentExceptionTest from http://www.javaspecialists.eu/archive/Issue162.html and it hangs (and keeps CPU 100% busy) each ~3rd run on my laptop. I could not reproduce it on server machines though.
> Backtrace of the busy thread is always this:
> ntdll.dll!7c90eb94()
> ntdll.dll!7c90ea53()
> kernel32.dll!7c832998()
> hythr.dll!_apr_winapi_SwitchToThread() + 0x28 C
> hythr.dll!_apr_thread_yield@0() + 0x11 C
> > hythr.dll!hythread_suspend_all(HyThread * * iter_ptr=0x2316fb50, HyThreadGroup * group=0x00000000) Line 397 + 0x21 C
> harmonyvm.dll!stop_the_world_root_set_enumeration() Line 91 + 0x11 C++
> gc_gen_uncomp.dll!gc_prepare_rootset(GC * gc=0x0048a6b0) Line 117 C++
> gc_gen_uncomp.dll!gc_reclaim_heap(GC * gc=0x00000001, unsigned int gc_cause=1) Line 198 C++
> gc_gen_uncomp.dll!sspace_alloc(unsigned int size=24, Allocator * allocator=0x22dc5b20) Line 61 C++
> gc_gen_uncomp.dll!gc_alloc(unsigned int size=584696256, unsigned int ah=5368400, void * unused_gc_tls=0x22d9c294) Line 105 + 0x6 C++
> harmonyvm.dll!vm_malloc_with_thread_pointer(unsigned int size=588709188, unsigned int ah=588709456, void * tp=0x12a6726c) Line 1755 + 0x15 C++
> harmonyvm.dll!compile_protect_arguments(Method * method=0x00000000, GcFrame * gc=0x22d9c1c0) Line 124 C++
> harmonyvm.dll!m2n_free_local_handles() Line 263 C++
> ntdll.dll!7c910833()
> ntdll.dll!7c910833()
> kernel32.dll!7c812c5b()
> kernel32.dll!7c812c87()
> ntdll.dll!7c9105c8()
> harmonyvm.dll!JIT_execute_method_default(void * jit=0x00000000, _jmethodID * methodID=0x00000056, jvalue * return_value=0x2316ff38, jvalue * args=0x2316ff04) Line 295 + 0x8 C++
> em.dll!DrlEMImpl::executeMethod(_jmethodID * meth=0x22b2d698, jvalue * return_value=0x2316ff38, jvalue * args=0x2316ff04) Line 522 + 0x14 C++
> em.dll!ExecuteMethod(_jmethodID * meth=0x22b2d698, jvalue * return_value=0x2316ff38, jvalue * args=0x2316ff04) Line 40 C++
> harmonyvm.dll!vm_execute_java_method_array(_jmethodID * method=0x22b2d698, jvalue * result=0x2316ff38, jvalue * args=0x2316ff04) Line 56 + 0x19 C++
> harmonyvm.dll!call_method_no_ref_result(JNIEnv_External * jni_env=0x22dc69b8, _jobject * obj=0x7c901005, _jmethodID * methodID=0x7c90eb94, jvalue * args=0x00000000, jvalue * result=0x2316ff38, int non_virtual=588708620) Line 189 + 0xe C++
> harmonyvm.dll!CallVoidMethodA(JNIEnv_External * jni_env=0x22dc69b8, _jobject * obj=0x22dc5280, _jmethodID * methodID=0x22b2d698, jvalue * args=0x00000000) Line 230 + 0x20 C++
> harmonyvm.dll!jthread_wrapper_start_proc(void * arg=0x22dc69b8) Line 166 C++
> msvcr71.dll!01f59565()
> kernel32.dll!7c80b683()
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.