[Mono-bugs] [Bug 434289] Assembly.LoadFrom deadlock

bugzilla_noreply at novell.com bugzilla_noreply at novell.com
Sun Oct 12 15:51:22 EDT 2008


https://bugzilla.novell.com/show_bug.cgi?id=434289

User meebey at meebey.net added comment
https://bugzilla.novell.com/show_bug.cgi?id=434289#c7





--- Comment #7 from Mirco Bauer <meebey at meebey.net>  2008-10-12 13:51:22 MDT ---
I am using Mono 1.9.1 + r113458

meebey at redbull:~$ mono test-assembly-loadfile.exe 
single-threaded
starting...
/usr/lib/mono/gtk-sharp-2.0 done
/usr/lib/mono/2.0 done
done.
meebey at redbull:~$ 

meebey at redbull:~$ while true; do mono test-assembly-loadfile.exe -m; done
multi-threaded
starting...

Here the stack traces of gdb:
(gdb) t a a bt

Thread 5 (Thread 0xb77c5b90 (LWP 1375)):
#0  0xb7efb424 in __kernel_vsyscall ()
#1  0xb7e118a6 in nanosleep () from /lib/i686/cmov/libpthread.so.0
#2  0x08122638 in collection_thread (unused=0x0) at collection.c:34
#3  0xb7e0a4c0 in start_thread () from /lib/i686/cmov/libpthread.so.0
#4  0xb7d6361e in clone () from /lib/i686/cmov/libc.so.6

Thread 4 (Thread 0xb723db90 (LWP 1376)):
#0  0xb7efb424 in __kernel_vsyscall ()
#1  0xb7e0e025 in pthread_cond_wait@@GLIBC_2.3.2 () from
/lib/i686/cmov/libpthread.so.0
#2  0x08133ae7 in timedwait_signal_poll_cond (cond=0xb77371dc,
mutex=0xb77371c4, timeout=0x0, alertable=0) at handles.c:1443
#3  0x0813608c in _wapi_handle_timedwait_signal_handle (handle=0x404,
timeout=0x0, alertable=0) at handles.c:1523
#4  0x081360cc in _wapi_handle_wait_signal_handle (handle=0x404, alertable=0)
at handles.c:1483
#5  0x0812336a in WaitForSingleObjectEx (handle=0x404, timeout=4294967295,
alertable=0) at wait.c:200
#6  0x080be04a in finalizer_thread (unused=0x0) at gc.c:894
#7  0x080ee164 in start_wrapper (data=0xa1d14d8) at threads.c:589
#8  0x0812722e in thread_start_routine (args=0xb75f1c88) at threads.c:282
#9  0x081491c5 in GC_start_routine (arg=0x26f40) at pthread_support.c:1369
#10 0xb7e0a4c0 in start_thread () from /lib/i686/cmov/libpthread.so.0
#11 0xb7d6361e in clone () from /lib/i686/cmov/libc.so.6

Thread 3 (Thread 0xb7138b90 (LWP 1377)):
#0  0xb7efb424 in __kernel_vsyscall ()
#1  0xb7e10c99 in __lll_lock_wait () from /lib/i686/cmov/libpthread.so.0
#2  0xb7e0c0d3 in _L_lock_291 () from /lib/i686/cmov/libpthread.so.0
#3  0xb7e0bb36 in pthread_mutex_lock () from /lib/i686/cmov/libpthread.so.0
#4  0x080cc932 in mono_loader_lock () at loader.c:1801
#5  0x080ff8b3 in mono_metadata_clean_for_image (image=0xb6f88500) at
metadata.c:2151
#6  0x080debcf in mono_image_close (image=0xb6f88500) at image.c:1194
#7  0x080df45b in register_image (image=0xb6f88500) at image.c:988
#8  0x080d9a86 in mono_assembly_open_full (filename=0xb6f7e430
"/usr/lib/mono/gtk-sharp-2.0/gconf-sharp.dll", status=0xb71381c0, refonly=0) at
assembly.c:1287
#9  0x080d490b in ves_icall_System_Reflection_Assembly_LoadFrom (fname=0x459a0,
refOnly=<value optimized out>) at appdomain.c:1316
#10 0xb6df0d54 in ?? ()
#11 0x000459a0 in ?? ()
#12 0x00000000 in ?? ()

Thread 2 (Thread 0xb6effb90 (LWP 1378)):
#0  0xb7efb424 in __kernel_vsyscall ()
#1  0xb7e10c99 in __lll_lock_wait () from /lib/i686/cmov/libpthread.so.0
#2  0xb7e0c0d3 in _L_lock_291 () from /lib/i686/cmov/libpthread.so.0
#3  0xb7e0bb36 in pthread_mutex_lock () from /lib/i686/cmov/libpthread.so.0
#4  0x080da91f in mono_assembly_load_reference (image=0xb6c28740, index=0) at
assembly.c:834
#5  0x080bb52e in mono_class_from_typeref (image=0xb6c28740, type_token=<value
optimized out>) at class.c:132
#6  0x080b9f6c in mono_class_get_full (image=0xb6c28740, type_token=16777217,
context=0x80) at class.c:4559
#7  0x080baea5 in mono_class_create_from_typedef (image=0xb6c28740,
type_token=33554435) at class.c:3493
#8  0x080b9f49 in mono_class_get_full (image=0xb6c28740, type_token=33554435,
context=0x80) at class.c:4556
#9  0x080b9fe0 in mono_class_get (image=0xb6c28740, type_token=33554435) at
class.c:4618
#10 0x080c3dd8 in mono_module_get_types (domain=0x25f00, image=0xb6c28740,
exportedOnly=0 '\0') at icall.c:112
#11 0x080c7a9a in ves_icall_System_Reflection_Assembly_GetTypes
(assembly=0x41db0, exportedOnly=0 '\0') at icall.c:4998
#12 0xb6df0e3c in ?? ()
#13 0x00041db0 in ?? ()
#14 0x00000000 in ?? ()

---Type <return> to continue, or q <return> to quit---
Thread 1 (Thread 0xb7c526d0 (LWP 1374)):
#0  0xb7efb424 in __kernel_vsyscall ()
#1  0xb7e118a6 in nanosleep () from /lib/i686/cmov/libpthread.so.0
#2  0x08135f9f in _wapi_handle_timedwait_signal_handle (handle=<value optimized
out>, timeout=0x0, alertable=1) at ../../mono/io-layer/handles-private.h:315
#3  0x081360cc in _wapi_handle_wait_signal_handle (handle=0x40a, alertable=1)
at handles.c:1483
#4  0x0812336a in WaitForSingleObjectEx (handle=0x40a, timeout=4294967295,
alertable=1) at wait.c:200
#5  0x080ec95a in ves_icall_System_Threading_Thread_Join_internal
(this=0x25a50, ms=-1, thread=0x40a) at threads.c:1254
#6  0xb77d0105 in ?? ()
#7  0x00025a50 in ?? ()
#8  0xffffffff in ?? ()
#9  0x0000040a in ?? ()
#10 0x0a1a5aa0 in ?? ()
#11 0x00025a50 in ?? ()
#12 0x00025a50 in ?? ()
#13 0xbfe16c1c in ?? ()
#14 0x00025960 in ?? ()
#15 0x00025a50 in ?? ()
#16 0x00000001 in ?? ()
#17 0xbfe16bfc in ?? ()
#18 0xb77d00dc in ?? ()
#19 0xbfe16c10 in ?? ()
#20 0xb77d004b in ?? ()
#21 0x00025a50 in ?? ()
#22 0xffffffff in ?? ()
#23 0x0000040a in ?? ()
#24 0xbfe16c84 in ?? ()
#25 0xb77c64ac in ?? ()
#26 0x00025a50 in ?? ()
#27 0x0004efa8 in ?? ()
#28 0x00000001 in ?? ()
#29 0x00000002 in ?? ()
#30 0x0004efa8 in ?? ()
#31 0xfffffffe in ?? ()
#32 0x00000002 in ?? ()
#33 0x0004efa8 in ?? ()
#34 0xfffffffe in ?? ()
#35 0x00000002 in ?? ()
#36 0x0004efa8 in ?? ()
#37 0xfffffffe in ?? ()
#38 0x00000002 in ?? ()
#39 0x00042d90 in ?? ()
#40 0x00025960 in ?? ()
#41 0x00025960 in ?? ()
#42 0x0004efa8 in ?? ()
#43 0x011a95f4 in ?? ()
#44 0x00047ff8 in ?? ()
#45 0x0a1a94d4 in ?? ()
#46 0x0a1a94b4 in ?? ()
#47 0xbfe16c18 in ?? ()
#48 0x0a1a94b4 in ?? ()
#49 0xb77c6198 in ?? ()
#50 0x00025f00 in ?? ()
#51 0x0a1a94b4 in ?? ()
#52 0x00000000 in ?? ()
---Type <return> to continue, or q <return> to quit---
#0  0xb7efb424 in __kernel_vsyscall ()
(gdb) 

Someone else was using Mono 2.0 and had the same issue:
20:23:03 <icqnumber_> meebey, so single test worked, i assume
20:23:17 <meebey> icqnumber: if it exits it works
20:23:19 <icqnumber_> and with -m, hmm....
20:24:59 <meebey> with -m doesnt exit?
20:25:09 <icqnumber_> yep


-- 
Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
You are the assignee for the bug.


More information about the mono-bugs mailing list