RejectedSoftware Forums

Sign up

gdb halts on non-errors

Hi,

Debugging issues with GDB currently a bit of a pain because it halts on several different non-errors. Could you advise on how to get around this. Examples on places it will halt. I see the last one here is not vibe specific, but so this might be a GDB setup issue, or a D issue. Any thoughts?

0 in determineinfo of dl-addr.c:62
1 in
GIdladdr of dl-addr.c:140
2 in _backtracesymbols of ../sysdeps/generic/elf/backtracesyms.c:52
3 in core.runtime.defaultTraceHandler()
4 in core.runtime.defaultTraceHandler()
5 in dtraceContext
6 in dcreateTrace
7 in dthrowc
8 in vibe.core.core.VibeDriverCore.yieldForEvent() of /usr/src/vibed/source/vibe/core/core.d:542
9 in vibe.core.drivers.libevent2.Libevent2Driver.connectTCP() of /usr/src/vibed/source/vibe/core/drivers/libevent2.d:226
10 in vibe.core.net.connectTCP() of /usr/src/vibed/source/vibe/core/net.d:87

0 in lll_lock_wait of ../nptl/sysdeps/unix/sysv/linux/x86_64/lowlevellock.S:132
1 in _L_lock_903 of /lib/x86_64-linux-gnu/libpthread.so.0
2 in
pthreadmutexlock of pthreadmutexlock.c:82
3 in GIdladdr of dl-addr.c:132
4 in
backtracesymbols of ../sysdeps/generic/elf/backtracesyms.c:52
5 in core.runtime.defaultTraceHandler()
6 in core.runtime.defaultTraceHandler()
7 in dtraceContext
8 in dcreateTrace
9 in dthrowc
10 in vibe.core.drivers.libevent2.Libevent2Driver.connectTCP() of /usr/src/vibed/source/vibe/core/drivers/libevent2.d:232
11 in vibe.core.net.connectTCP() of /usr/src/vibed/source/vibe/core/net.d:87

0 in lll_lock_wait of ../nptl/sysdeps/unix/sysv/linux/x86_64/lowlevellock.S:132
1 in _L_lock_903 of /lib/x86_64-linux-gnu/libpthread.so.0
2 in
pthreadmutexlock of pthreadmutexlock.c:82
3 in core.sync.mutex.Mutex.lock()
4 in gc.gc.GC.malloc()
5 in gcmalloc
6 in
d_allocmemory

Re: gdb halts on non-errors

On Sat, 05 Oct 2013 20:54:17 GMT, Øivind Loe wrote:

Hi,

Debugging issues with GDB currently a bit of a pain because it halts on several different non-errors. Could you advise on how to get around this. Examples on places it will halt. I see the last one here is not vibe specific, but so this might be a GDB setup issue, or a D issue. Any thoughts?

I know the same is true when debugging on Windows/VisualD. It can be avoided there by disabling the interception of certain exception types and I think the same should be possible for GDB by disabling the proper user signals - however I haven't done this myself, so I can't say which are the correct signals. Maybe someone else has more experience there, I'd try on the D forums.