[Mono-dev] Compiling Mono v2.4 RC2 (Solaris 10 SPARCv9)

chris zhu chris.zhu at sun.com
Fri May 15 04:21:15 EDT 2009


I debug into mono/mini/local-propagation.c of mono 2.2, and found there's
something wrong in the "MonoBasicBlock *bb" of function mono_local_deadce.

The point of previous inst is same as the inst itself, which will run into
dead lock if we traverses the inst list backward. It's hard for us to go
further into the source code, anyone have any idea about it.


index=1: ins=3375992, (ins)->prev=0, (ins)->next=3376040

index=2: ins=3376040, (ins)->prev=3375992, (ins)->next=3376088

index=3: ins=3376088, (ins)->prev=3376040, (ins)->next=3376232

index=4: ins=3376232, (ins)->prev=3376088, (ins)->next=3376288

index=5: ins=3376288, (ins)->prev=3376232, (ins)->next=3376344

index=6: ins=3376344, (ins)->prev=3376288, (ins)->next=3376392

index=7: ins=3376392, (ins)->prev=3376392, (ins)->next=3376136

index=8: ins=3376136, (ins)->prev=3376392, (ins)->next=3376448

index=9: ins=3376448, (ins)->prev=3376136, (ins)->next=0





Burkhard Linke wrote:
> 
> Hi,
> 
> 
> Thracx wrote:
>> 
>> 
In short, it's not working for me but I'm willing to keep trying and
document my experiences if I can get some help from the Mono developer
community.  I apologize for the lengthy post but I figured that I might as
well be thorough.

>> 
> 
> I'm running into the same problem with the 2.4 release of Mono. My current
> build does not use the bundled garbage collector, since I get compiler
> error during build time.
> 
> The cause of the endless loop during compiling the class library is not
> the compiler, but the runtime itself. The main thread of mono hangs in a
> loop, JIT-compiling methods (output created using 'pstack' utility under
> Solaris 10 and trimmed):
> 
> cab:~> pstack 6411
> 6411:   /vol/src/gnu/mono/mono-2.4/mono/mini/mono --config
> /vol/src/gnu/mono/m
> -----------------  lwp# 1 / thread# 1  --------------------
>  00083588 mono_local_deadce (2f4870, 1b4e80, 1b09f4, 137, ffffffff,
> ffffff) + 818
>  00039b9c mini_method_compile (2f4870, 35169ff, 10000000, 0, 1af560,
> 2f6fd0) + a40
>  0003b058 mono_jit_compile_method (2f6890, 1, fee73580, fef52000,
> ff371480, 0) + 2f0
>  000d7cdc mono_compile_method (2f6890, fec90740, ff373a40, 14, 80808080,
> fef52100) + 18
>  000a0ec8 mono_magic_trampoline (ffbfdeb0, fec90740, 2f6890, 0, 0, ff) +
> f8
>  fecf0104 ???????? (2e4ee0, 0, fee73580, fef52000, 2570b0, 6)
>  fec90740 ???????? (0, fec906f8, fee73580, fef52000, 257000, 6)
>  fec90478 ???????? (0, 0, ffbfe36c, fec906f8, 257000, fef52100)
>  0003b8a4 mono_jit_runtime_invoke (2fad58, 0, 0, ffbfe36c, 0, ff) + 98
>  000d8ca8 mono_runtime_invoke (2fad58, 0, 0, ffbfe36c, 2570b0, 6) + 50
>  000ded68 mono_runtime_class_init_full (2b7128, 0, fee73580, fef52000,
> 257000, 0) + 18c
>  00056f10 mono_method_to_ir (2c8cc0, 2f5240, 2b8340, feb92b3d, 2f7ad0, 2)
> + c8fc
>  00039710 mini_method_compile (2c8cc0, 35169ff, 10000000, 0, 1af560,
> 2f5240) + 5b4
>  0003b058 mono_jit_compile_method (2b8340, 1, 257000, 20, 2bf090,
> fef52100) + 2f0
>  0003b890 mono_jit_runtime_invoke (2b8340, 0, ffbfe7a4, 0, ffbfe72c,
> 80808080) + 84
>  000d8ca8 mono_runtime_invoke (2b8340, 0, ffbfe7a4, 0, 0, 34) + 50
>  000db7dc mono_runtime_exec_main (2b8340, 299e40, 0, 20, 2e, 34) + 138
>  000dbe14 mono_runtime_run_main (2b8340, 2, ffbfe9c0, 0, 80808080,
> 1010101) + 14c
>  0008523c mono_main (3, ffbfe9b4, 0, 0, 6, 0) + 15ac
>  00033110 _start   (0, 0, 0, 0, 0, 0) + 5c
> 
> The other two threads active at the time are the garbage collection thread
> and finalizer thread. 
> 
> The instruction pointer (first column) of the mono_local_deadce changes
> during several invocation of pstack, but the remaining backtrace remains
> the same. So the problem should be located somewhere in that function.
> 
> I'll put more debug output calls into the function in the next build and
> try to find out under which circumstances the endless loop occurs.
> 
> Mono 2.4 works fine under Solaris 10 x86, so the problem should be related
> to the different register sets of x86 and SPARC cpus.
> 

-- 
View this message in context: http://www.nabble.com/Compiling-Mono-v2.4-RC2-%28Solaris-10-SPARCv9%29-tp22587130p23555461.html
Sent from the Mono - Dev mailing list archive at Nabble.com.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.ximian.com/pipermail/mono-devel-list/attachments/20090515/e45d97bc/attachment.html 


More information about the Mono-devel-list mailing list