harmony-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Rana Dasgupta" <rdasg...@gmail.com>
Subject Re: [drlvm] my latest round of patches broke something
Date Mon, 25 Sep 2006 17:39:19 GMT
I looked at it( gc.LOS hang ) for a while and my findings are somewhat
similar to Alexey's. The problem occurs for me all the time irrespective of
where the trace statement apprears( ref: Weldon's comment ). On breaking in,
the call stack at hang is:


 ntdll.dll!7c90eb94()
  ntdll.dll!7c90ea53()
  kernel32.dll!7c81e956()
> hythr.dll!apr_winapi_SwitchToThread()  Line 219 + 0x2b C
  hythr.dll!apr_thread_yield()  Line 195 C
  hythr.dll!hythread_yield()  Line 297 C
  hythr.dll!wait_safe_region_event(HyThread * thread=0x0e80d408)  Line 227 C
  hythr.dll!hythread_suspend_all(HyThread * * t=0x036af7b0, HyThreadGroup *
group=0x00000000)  Line 401 + 0x9 C
  harmonyvm.dll!stop_the_world_root_set_enumeration()  Line 89 + 0xb C++
  harmonyvm.dll!vm_enumerate_root_set_all_threads()  Line 143 C++
  gc.dll!enumerate_universe()  Line 127 + 0x8 C++
  gc.dll!copy_gc(int size=4108)  Line 326 + 0x16 C++
  gc.dll!select_gc(int size=4108)  Line 96 + 0x9 C++
  gc.dll!gc_alloc(unsigned int in_size=4108, unsigned int ah=21234656, void
* thread_pointer=0x0102c4cc)  Line 238 + 0x9 C++
  harmonyvm.dll!vm_new_vector_using_vtable_and_thread_pointer(int
length=4096, unsigned int vector_handle=21234656, void * tp=0x0102c4cc)
Line 233 + 0x14 C++
  harmonyvm.dll!vm_rt_new_vector_using_vtable_and_thread_pointer(int
length=4096, unsigned int vector_handle=21234656, void * tp=0x0102c4cc)
Line 111 + 0x11 C++
  01341775()
  harmonyvm.dll!set_unwindable(bool unwindable=true)  Line 140 + 0xd C++
  ntdll.dll!7c90e591()
  ntdll.dll!7c90110a()
  hythr.dll!apr_thread_mutex_unlock(apr_thread_mutex_t * mutex=0x014ddba6)
Line 117 C
  gc.dll!GC_VTable_Info::is_finalizible()  Line 121 + 0x16 C++
  207ea704()
  jitrino.dll!Jitrino::Jet::rt_h_i64_a(__int64 v1=502568517412, __int64
v2=0, JavaByteCodes op=OPCODE_NOP)  Line 211 + 0x2f C++
  ntdll.dll!7c9106eb()
  ntdll.dll!7c9011a7()
  ntdll.dll!7c96cde9()
  ntdll.dll!7c918e94()
  ntdll.dll!7c918f87()
  ntdll.dll!7c90e591()
  ntdll.dll!7c926abe()
  ntdll.dll!7c96cde9()
  ntdll.dll!7c96e0f0()
  ntdll.dll!7c96e0d4()
  ntdll.dll!7c918dfa()
  ntdll.dll!7c90d625()
  harmonyvm.dll!initialize_arg_list_iterator(const char * descr=0x0057c530)
Line 52 + 0x7 C++
  harmonyvm.dll!Method::get_argument_list()  Line 237 + 0x11 C++
  036afd5c()
  harmonyvm.dll!JIT_execute_method_default(void * jit=0x00000000, _jmethodID
* methodID=0x02686c40, jvalue * return_value=0x00000000, jvalue *
args=0x036afeac)  Line 199 C++
  em.dll!DrlEMImpl::executeMethod(_jmethodID * meth=0x02686c40, jvalue *
return_value=0x00000000, jvalue * args=0x036afeac)  Line 488 + 0x16 C++
  em.dll!ExecuteMethod(_jmethodID * meth=0x02686c40, jvalue *
return_value=0x00000000, jvalue * args=0x036afeac)  Line 42 + 0x21 C++
  harmonyvm.dll!vm_execute_java_method_array(_jmethodID * method=0x02686c40,
jvalue * result=0x00000000, jvalue * args=0x036afeac)  Line 58 + 0x1c C++
  harmonyvm.dll!call_method_no_ref_result(JNIEnv_External * env=0x0084e958,
_jobject * obj=0x02d7e1a0, _jmethodID * methodID=0x02686c40, jvalue *
args=0x00000000, jvalue * result=0x00000000, int non_virtual=0)  Line 164 +
0x11 C++
  harmonyvm.dll!CallVoidMethodA(JNIEnv_External * env=0x0084e958, _jobject *
obj=0x02d7e1a0, _jmethodID * methodID=0x02686c40, jvalue * args=0x00000000)
Line 199 + 0x19 C++
  harmonyvm.dll!wrapper_proc(void * arg=0x02d74078)  Line 98 + 0x27 C
  hythr.dll!thread_start_proc(apr_thread_t * thd=0x0042c180, void *
p_args=0x0042c0d8)  Line 704 + 0xf C
  hythr.dll!dummy_worker(void * opaque=0x0042c180)  Line 79 + 0x13 C
  hythr.dll!_threadstartex(void * ptd=0x0039f3a8)  Line 241 + 0xd C
  kernel32.dll!7c80b50b()
  gc.dll!Partial_Reveal_Object::obj_info()  Line 148 + 0x3d C++
  kernel32.dll!7c8399f3()



There seems to be some kind of endless loop in apr_winapi_switchtothread()
,and I suspect that the problem may be quite similar to Alexey's findings.
I plan to investigate, but at this moment I am too broken with several tests
failing before I can even get to this point.



Thanks,

Rana

****************************************************************



> On 9/25/06, Alexey Varlamov <alexey.v.varlamov@gmail.com> wrote:
> >
> > Folks,
> >
> > You may find interesting investigations in HARMONY-1519 [1] of bugs in
> > patched APR condition variables on Win32, which affect wait()
> > behavior.
> >
> > [1]http://issues.apache.org/jira/browse/HARMONY-1519?page=all
> >
> >

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message