[Mono-dev] uClibc
Zoltan Varga
vargaz at gmail.com
Fri Dec 9 19:07:46 EST 2005
Hi,
This might be a race condition in our startup code, i.e. the runtime is not
expecting its signal handler to be called before it is fully started up.
Zoltan
On 12/9/05, Ben Timby <ben at gohelios.com> wrote:
> OK, some more info. Digging in with gdb, here is what is happening:
>
> 1. _wapi_collection_int() is called, which starts a new thread with
> pthread_create()
>
> 2. pthread_create() calls clone, clone eventually generates sigsuspend.
>
> 3. the sigusr1_signal_handler() function in mini.c is called.
>
> 4. The signal handler calls mono_jit_info_table_find() passing as the
> first parameter the domain object, this is retrieved by calling
> mono_domain_get().
>
> 5. mono_domain_get() uses GET_APPDOMAIN() macro to get the current
> appdomain, this macro refers to tls_appdomain, this value appears to be
> 0x0, which causes the SIGSEGV.
>
> Can anyone provide some insight into this?
>
> --
> Ben Timby
> Senior Software Architect
> Helios, LLC
> (p) 317-554-3619
> (f) 317-554-8997
> www.gohelios.com
>
>
> _______________________________________________
> Mono-devel-list mailing list
> Mono-devel-list at lists.ximian.com
> http://lists.ximian.com/mailman/listinfo/mono-devel-list
>
>
>
>
More information about the Mono-devel-list
mailing list