<div dir="ltr">Hi,<div><br></div><div>  The gdb support for mono might work only if the program is started from gdb, not when it is attached to. If you aot your assemblies (see the mono man page), the aot compiler generates debug info which gdb can read, so you should get better stack traces. About the <span style="font-size:12.8px">"../../gdb/dwarf2-frame.c:683: internal-error: Unknown CFI encountered." error, that should already be fixed in mono master.</span></div><div><span style="font-size:12.8px"><br></span></div><div><span style="font-size:12.8px">                  Zoltan</span></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Nov 9, 2015 at 12:37 PM, Chris Swiedler <span dir="ltr"><<a href="mailto:cswiedler@trionworlds.com" target="_blank">cswiedler@trionworlds.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">





<div lang="EN-US" link="#0563C1" vlink="#954F72">
<div>
<p>We have a server application that’s being developed under Visual Studio and run under Mono 3.12. We’re generating .mdb files from the .pdbs that VS creates. With those deployed next to the executable, mono will give full callstacks with
 source and line information when logging exceptions, so I believe the .mdbs are correct.<u></u><u></u></p>
<p><u></u> <u></u></p>
<p>I’ve read <a href="http://www.mono-project.com/docs/debug+profile/debug/" target="_blank">
http://www.mono-project.com/docs/debug+profile/debug/</a> so many times I can quote it by heart, but I still can’t get gdb to give me any useful symbols. I’m using gdb 7.6.1, so according to the docs, it should just use the JIT interface to get symbols.<u></u><u></u></p>
<p><u></u> <u></u></p>
<p>Is there any way to troubleshoot the loading of symbols by gdb? There are examples for how to generate xdb shared object files (I’ve tried them, but as doesn’t like some of the assembly that MONO_XDEBUG generates) but nothing on the
 new JIT interface other than "it should work". <u></u><u></u></p>
<p><u></u> <u></u></p>
<p>I do get errors like "../../gdb/dwarf2-frame.c:683: internal-error: Unknown CFI encountered." I’m not sure if those are relevant to my problem. A sample gdb session is below.<u></u><u></u></p>
<p><u></u> <u></u></p>
<p>Thanks,<u></u><u></u></p>
<p>chris<u></u><u></u></p>
<p><u></u> <u></u></p>
<p>GNU gdb (GDB) Red Hat Enterprise Linux 7.6.1-64.el7 Copyright (C) 2013 Free Software Foundation, Inc.<u></u><u></u></p>
<p>License GPLv3+: GNU GPL version 3 or later <<a href="http://gnu.org/licenses/gpl.html" target="_blank">http://gnu.org/licenses/gpl.html</a>><u></u><u></u></p>
<p>This is free software: you are free to change and redistribute it.<u></u><u></u></p>
<p>There is NO WARRANTY, to the extent permitted by law.  Type "show copying"<u></u><u></u></p>
<p>and "show warranty" for details.<u></u><u></u></p>
<p>This GDB was configured as "x86_64-redhat-linux-gnu".<u></u><u></u></p>
<p>For bug reporting instructions, please see:<u></u><u></u></p>
<p><<a href="http://www.gnu.org/software/gdb/bugs/" target="_blank">http://www.gnu.org/software/gdb/bugs/</a>>.<u></u><u></u></p>
<p>Attaching to process 21185<u></u><u></u></p>
<p>Reading symbols from /usr/bin/mono-sgen...(no debugging symbols found)...done.<u></u><u></u></p>
<p>Reading symbols from /lib64/libm.so.6...Reading symbols from /usr/lib/debug/usr/lib64/libm-2.17.so.debug...done.<u></u><u></u></p>
<p>done.<u></u><u></u></p>
<p>Loaded symbols for /lib64/libm.so.6<u></u><u></u></p>
<p>Reading symbols from /lib64/librt.so.1...Reading symbols from /usr/lib/debug/usr/lib64/librt-2.17.so.debug...done.<u></u><u></u></p>
<p>done.<u></u><u></u></p>
<p>Loaded symbols for /lib64/librt.so.1<u></u><u></u></p>
<p>Reading symbols from /lib64/libdl.so.2...Reading symbols from /usr/lib/debug/usr/lib64/libdl-2.17.so.debug...done.<u></u><u></u></p>
<p>done.<u></u><u></u></p>
<p>Loaded symbols for /lib64/libdl.so.2<u></u><u></u></p>
<p>Reading symbols from /lib64/libpthread.so.0...Reading symbols from /usr/lib/debug/usr/lib64/libpthread-2.17.so.debug...done.<u></u><u></u></p>
<p>done.<u></u><u></u></p>
<p>[New LWP 21269]<u></u><u></u></p>
<p>...<u></u><u></u></p>
<p>[New LWP 21187]<u></u><u></u></p>
<p>[Thread debugging using libthread_db enabled] Using host libthread_db library "/lib64/libthread_db.so.1".<u></u><u></u></p>
<p>Loaded symbols for /lib64/libpthread.so.0 Reading symbols from /lib64/libgcc_s.so.1...Reading symbols from /usr/lib/debug/usr/lib64/libgcc_s-4.8.3-20140911.so.1.debug...done.<u></u><u></u></p>
<p>done.<u></u><u></u></p>
<p>Loaded symbols for /lib64/libgcc_s.so.1<u></u><u></u></p>
<p>Reading symbols from /lib64/libc.so.6...Reading symbols from /usr/lib/debug/usr/lib64/libc-2.17.so.debug...done.<u></u><u></u></p>
<p>done.<u></u><u></u></p>
<p>Loaded symbols for /lib64/libc.so.6<u></u><u></u></p>
<p>Reading symbols from /lib64/ld-linux-x86-64.so.2...Reading symbols from /usr/lib/debug/usr/lib64/ld-2.17.so.debug...done.<u></u><u></u></p>
<p>done.<u></u><u></u></p>
<p>Loaded symbols for /lib64/ld-linux-x86-64.so.2 Reading symbols from /lib64/libnss_files.so.2...Reading symbols from /usr/lib/debug/usr/lib64/libnss_files-2.17.so.debug...done.<u></u><u></u></p>
<p>done.<u></u><u></u></p>
<p>Loaded symbols for /lib64/libnss_files.so.2 Reading symbols from /usr/lib/mono/4.5/mscorlib.dll.so...done.<u></u><u></u></p>
<p>Loaded symbols for /usr/lib/mono/4.5/<a href="http://mscorlib.dll.so" target="_blank">mscorlib.dll.so</a> Reading symbols from /usr/lib64/libMonoPosixHelper.so...done.<u></u><u></u></p>
<p>Loaded symbols for /usr/lib64/libMonoPosixHelper.so Reading symbols from /lib64/libz.so.1...Reading symbols from /usr/lib/debug/usr/lib64/libz.so.1.2.7.debug...done.<u></u><u></u></p>
<p>done.<u></u><u></u></p>
<p>Loaded symbols for /lib64/libz.so.1<u></u><u></u></p>
<p>Reading symbols from /lib64/libnss_dns.so.2...Reading symbols from /usr/lib/debug/usr/lib64/libnss_dns-2.17.so.debug...done.<u></u><u></u></p>
<p>done.<u></u><u></u></p>
<p>Loaded symbols for /lib64/libnss_dns.so.2 Reading symbols from /lib64/libresolv.so.2...Reading symbols from /usr/lib/debug/usr/lib64/libresolv-2.17.so.debug...done.<u></u><u></u></p>
<p>done.<u></u><u></u></p>
<p>Loaded symbols for /lib64/libresolv.so.2 clock_nanosleep (clock_id=1, flags=1, req=0x7fff271a8e80, rem=0xffffffffffffffff) at ../sysdeps/unix/sysv/linux/clock_nanosleep.c:49<u></u><u></u></p>
<p>49            LIBC_CANCEL_RESET (oldstate); Mono support loaded.<u></u><u></u></p>
<p>(gdb) mono_backtrace 10<u></u><u></u></p>
<p>#0  clock_nanosleep (clock_id=1, flags=1, req=0x7fff271a8e80, rem=0xffffffffffffffff) at ../sysdeps/unix/sysv/linux/clock_nanosleep.c:49<u></u><u></u></p>
<p>49            LIBC_CANCEL_RESET (oldstate);<u></u><u></u></p>
<p>#1  0x0000000000618c78 in SleepEx ()<u></u><u></u></p>
<p>#2  0x000000000058cc7a in ves_icall_System_Threading_Thread_Sleep_internal ()<u></u><u></u></p>
<p>#3 0x413215c2 in  (wrapper managed-to-native) System.Threading.Thread:Sleep_internal (int) + 0x52 (0x41321570 0x413215ee) [0x20ee4f0 - LobbyServer.exe]<u></u><u></u></p>
<p>#4  0x0000000002146a10 in ?? ()<u></u><u></u></p>
<p>#5  0x00007fff271a9410 in ?? ()<u></u><u></u></p>
<p>#6  0x00007f252cc01338 in ?? ()<u></u><u></u></p>
<p>#7  0x00007fff271a9410 in ?? ()<u></u><u></u></p>
<p>#8  0x00007f252cc00b18 in ?? ()<u></u><u></u></p>
<p>#9  0x0000000002139ac0 in ?? ()<u></u><u></u></p>
<p>(gdb) info threads<u></u><u></u></p>
<p>  Id   Target Id         Frame<u></u><u></u></p>
<p>  32   Thread 0x7f252b0ed700 (LWP 21187) "Finalizer" sem_wait () at ../nptl/sysdeps/unix/sysv/linux/x86_64/sem_wait.S:85<u></u><u></u></p>
<p>  31   Thread 0x7f252aeec700 (LWP 21188) "mono-sgen" 0x00007f25337f6b7d in poll () at ../sysdeps/unix/syscall-template.S:81<u></u><u></u></p>
<p>  30   Thread 0x7f2529e6f700 (LWP 21200) "Timer-Scheduler" pthread_cond_timedwait@@GLIBC_2.3.2 ()<u></u><u></u></p>
<p>    at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:238<u></u><u></u></p>
<p>  29   Thread 0x7f2529c6e700 (LWP 21202) "mono-sgen" 0x00007f2533801783 in epoll_wait () at ../sysdeps/unix/syscall-template.S:81<u></u><u></u></p>
<p>  28   Thread 0x7f2529c29700 (LWP 21203) "IO Threadpool w" sem_timedwait () at ../nptl/sysdeps/unix/sysv/linux/x86_64/sem_timedwait.S:101<u></u><u></u></p>
<p>  27   Thread 0x7f2529be4700 (LWP 21204) "mono-sgen" pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185<u></u><u></u></p>
<p>  26   Thread 0x7f25299df700 (LWP 21205) "mono-sgen" pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185<u></u><u></u></p>
<p>  25   Thread 0x7f2529370700 (LWP 21207) "IO Threadpool w" sem_timedwait () at ../nptl/sysdeps/unix/sysv/linux/x86_64/sem_timedwait.S:101<u></u><u></u></p>
<p>  24   Thread 0x7f252932f700 (LWP 21208) "Threadpool moni" clock_nanosleep (clock_id=1, flags=1, req=0x7f252932ed40, rem=0xffffffffffffffff)<u></u><u></u></p>
<p>    at ../sysdeps/unix/sysv/linux/clock_nanosleep.c:49<u></u><u></u></p>
<p>  23   Thread 0x7f25292ee700 (LWP 21209) "Threadpool work"<u></u><u></u></p>
<p>../../gdb/dwarf2-frame.c:683: internal-error: Unknown CFI encountered.<u></u><u></u></p>
<p>A problem internal to GDB has been detected, further debugging may prove unreliable.<u></u><u></u></p>
<p>Quit this debugging session? (y or n) n<u></u><u></u></p>
<p>../../gdb/dwarf2-frame.c:683: internal-error: Unknown CFI encountered.<u></u><u></u></p>
<p>A problem internal to GDB has been detected, further debugging may prove unreliable.<u></u><u></u></p>
<p>Create a core file of GDB? (y or n) n<u></u><u></u></p>
<p>  22   Thread 0x7f25290a4700 (LWP 21211) "Threadpool work" sem_timedwait ()<u></u><u></u></p>
<p>    at ../nptl/sysdeps/unix/sysv/linux/x86_64/sem_timedwait.S:101<u></u><u></u></p>
<p>  21   Thread 0x7f2528e9b700 (LWP 21213) "Threadpool work" sem_timedwait () at ../nptl/sysdeps/unix/sysv/linux/x86_64/sem_timedwait.S:101<u></u><u></u></p>
<p>  20   Thread 0x7f2528c9a700 (LWP 21214) "IO Threadpool w" sem_timedwait () at ../nptl/sysdeps/unix/sysv/linux/x86_64/sem_timedwait.S:101<u></u><u></u></p>
<p>  19   Thread 0x7f2528c51700 (LWP 21216) "Threadpool work" sem_timedwait () at ../nptl/sysdeps/unix/sysv/linux/x86_64/sem_timedwait.S:101<u></u><u></u></p>
<p>  18   Thread 0x7f2528a50700 (LWP 21217) "IO Threadpool w" sem_timedwait () at ../nptl/sysdeps/unix/sysv/linux/x86_64/sem_timedwait.S:101<u></u><u></u></p>
<p>  17   Thread 0x7f2528a07700 (LWP 21219) "Threadpool work" sem_timedwait () at ../nptl/sysdeps/unix/sysv/linux/x86_64/sem_timedwait.S:101<u></u><u></u></p>
<p>  16   Thread 0x7f2528806700 (LWP 21221) "Threadpool work" sem_timedwait () at ../nptl/sysdeps/unix/sysv/linux/x86_64/sem_timedwait.S:101<u></u><u></u></p>
<p>  15   Thread 0x7f2528601700 (LWP 21223) "Threadpool work" sem_timedwait () at ../nptl/sysdeps/unix/sysv/linux/x86_64/sem_timedwait.S:101<u></u><u></u></p>
<p>  14   Thread 0x7f25283fc700 (LWP 21235) "Threadpool work" sem_timedwait () at ../nptl/sysdeps/unix/sysv/linux/x86_64/sem_timedwait.S:101<u></u><u></u></p>
<p>  13   Thread 0x7f24ebfff700 (LWP 21237) "Threadpool work" sem_timedwait () at ../nptl/sysdeps/unix/sysv/linux/x86_64/sem_timedwait.S:101<u></u><u></u></p>
<p>  12   Thread 0x7f24ebc73700 (LWP 21240) "Threadpool work" sem_timedwait () at ../nptl/sysdeps/unix/sysv/linux/x86_64/sem_timedwait.S:101<u></u><u></u></p>
<p>  11   Thread 0x7f24eba72700 (LWP 21242) "Threadpool work" sem_timedwait () at ../nptl/sysdeps/unix/sysv/linux/x86_64/sem_timedwait.S:101<u></u><u></u></p>
<p>  10   Thread 0x7f24eb871700 (LWP 21244) "Threadpool work" sem_timedwait () at ../nptl/sysdeps/unix/sysv/linux/x86_64/sem_timedwait.S:101<u></u><u></u></p>
<p>  9    Thread 0x7f24eb670700 (LWP 21246) "Threadpool work" sem_timedwait () at ../nptl/sysdeps/unix/sysv/linux/x86_64/sem_timedwait.S:101<u></u><u></u></p>
<p>  8    Thread 0x7f24eb46f700 (LWP 21248) "Threadpool work" sem_timedwait () at ../nptl/sysdeps/unix/sysv/linux/x86_64/sem_timedwait.S:101<u></u><u></u></p>
<p>  7    Thread 0x7f24eb1eb700 (LWP 21250) "Threadpool work" sem_timedwait () at ../nptl/sysdeps/unix/sysv/linux/x86_64/sem_timedwait.S:101<u></u><u></u></p>
<p>  6    Thread 0x7f24eafea700 (LWP 21252) "Threadpool work" sem_timedwait () at ../nptl/sysdeps/unix/sysv/linux/x86_64/sem_timedwait.S:101<u></u><u></u></p>
<p>  5    Thread 0x7f24eade9700 (LWP 21253) "Threadpool work" sem_timedwait () at ../nptl/sysdeps/unix/sysv/linux/x86_64/sem_timedwait.S:101<u></u><u></u></p>
<p>  4    Thread 0x7f24eabe8700 (LWP 21254) "Threadpool work" sem_timedwait () at ../nptl/sysdeps/unix/sysv/linux/x86_64/sem_timedwait.S:101<u></u><u></u></p>
<p>  3    Thread 0x7f24ea9e7700 (LWP 21266) "Threadpool work" sem_timedwait () at ../nptl/sysdeps/unix/sysv/linux/x86_64/sem_timedwait.S:101<u></u><u></u></p>
<p>  2    Thread 0x7f24ea7e6700 (LWP 21269) "Threadpool work" sem_timedwait () at ../nptl/sysdeps/unix/sysv/linux/x86_64/sem_timedwait.S:101<u></u><u></u></p>
<p>* 1    Thread 0x7f253481e780 (LWP 21185) "mono-sgen" clock_nanosleep (clock_id=1, flags=1, req=0x7fff271a8e80, rem=0xffffffffffffffff)<u></u><u></u></p>
<p>    at ../sysdeps/unix/sysv/linux/clock_nanosleep.c:49<u></u><u></u></p>
<p><u></u> <u></u></p>
<p><u></u> <u></u></p>
<p><u></u> <u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
</div>

<br>_______________________________________________<br>
Mono-devel-list mailing list<br>
<a href="mailto:Mono-devel-list@lists.ximian.com">Mono-devel-list@lists.ximian.com</a><br>
<a href="http://lists.ximian.com/mailman/listinfo/mono-devel-list" rel="noreferrer" target="_blank">http://lists.ximian.com/mailman/listinfo/mono-devel-list</a><br>
<br></blockquote></div><br></div>