[Mono-list] mono on debian/powerpc && openbsd/i386

Andras GELANYI ghz@sch.bme.hu
Tue, 02 Mar 2004 20:03:03 +0100


(sorry for the previous message.. now the right thread.)

i have the same problem under openbsd..

after a little cpuid hack (disabled cpuid usage) i successfully compiled
mono 0.30.2 on my openbsd3.4 box (arch i386).


mono --help works. but when i try to run any bytecode with mono it
produces the same as cristophe wrote.

using gdb i figured out that the segmentation fault is in the
GC_find_limit function. (maybe the segfault signal handling is wrong and
then comes the deadlock.)

can anyone help me to solve this problem?

the gdb output:

------------------------------------------------------------------------
GNU gdb 4.16.1
Copyright 1996 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you
are
welcome to change it and/or distribute copies of it under certain
conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for
details.
This GDB was configured as "i386-unknown-openbsd3.4"...
(gdb) run /home/ghz/mono/bin/mcs.exe hello.cs
Starting program: /home/ghz/mono/bin/mono /home/ghz/mono/bin/mcs.exe
hello.cs

Program received signal SIGSEGV, Segmentation fault.
0x7179ab5 in GC_find_limit (p=3D0x3c003160 "=E4f=BF=CF", up=3D0) at os_dep.=
c:806
806                     GC_noop1((word)(*result));
(gdb) bt
#0  0x7179ab5 in GC_find_limit (p=3D0x3c003160 "=E4f=BF=CF", up=3D0) at
os_dep.c:806
#1  0x71798fc in GC_init_netbsd_elf () at os_dep.c:390
#2  0x7178c8a in GC_init_inner () at misc.c:639
#3  0x7175585 in GC_generic_malloc_inner (lb=3D28, k=3D1) at malloc.c:123
#4  0x71756a5 in GC_generic_malloc (lb=3D28, k=3D1) at malloc.c:190
#5  0x7175856 in GC_malloc (lb=3D28) at malloc.c:295
#6  0x7169133 in mono_g_hash_table_new_full (hash_func=3D0xd25ef40
<g_direct_hash>, key_equal_func=3D0xd25ef48 <g_direct_equal>,
    key_destroy_func=3D0, value_destroy_func=3D0) at mono-hash.c:152
#7  0x716910c in mono_g_hash_table_new (hash_func=3D0xd25ef40
<g_direct_hash>, key_equal_func=3D0xd25ef48 <g_direct_equal>) at
mono-hash.c:122
#8  0x716838b in TlsSetValue (idx=3D0, value=3D0x3c0070d0) at threads.c:801
#9  0x70e4f3d in setup_jit_tls_data (stack_start=3D0xffffffff,
abort_func=3D0x70e4ef4) at mini.c:6341
#10 0x70e78a8 in mini_init (filename=3D0xcfbf6834
"/home/ghz/mono/bin/mcs.exe") at mini.c:7873
#11 0x7100797 in mono_main (argc=3D3, argv=3D0xcfbf66d4) at driver.c:677
#12 0x1c000757 in main (argc=3D3, argv=3D0xcfbf66d4) at main.c:6
#13 0x1c000691 in ___start ()
#14 0x1c000607 in __start ()
#15 0xcfbf681c in ?? ()
Error accessing memory address 0x3: Invalid argument.
(gdb) c
Continuing.
^C
Program received signal SIGINT, Interrupt.
0x7179ab5 in GC_find_limit (p=3D0xcfbf6400
"=C0=FE\r'$\020\016'(d=BF=CF(\216\027\a\027\001", up=3D1) at os_dep.c:806
806                     GC_noop1((word)(*result));
(gdb) c
Continuing.
^C
Program received signal SIGINT, Interrupt.
0x7179ab5 in GC_find_limit (p=3D0xcfbf6400
"=C0=FE\r'$\020\016'(d=BF=CF(\216\027\a\027\001", up=3D1) at os_dep.c:806
806                     GC_noop1((word)(*result));
------------------------------------------------------------------------


On Tue, 2004-03-02 at 19:26, christophe barbe wrote:
> I am trying to get a working mono environment on my
> debian/unstable powerpc.
> When compiling hello.cs, mcs seems to deadlock without any output.
> mcs --about does the same.
> I tried to strace it but it segfaults (I guess that not related to the
> first issue).
>=20
> mcs is a symbolic link to /usr/bin/cli-wrapper.
>=20
> 'mono --help' produces the expected output.
>=20
> What should I try to find the culprit?
>=20
> Thanks,
> Christophe
--=20
Andras GELANYI <ghz@sch.bme.hu>