Remote mutli-threaded debugging with large number of threads

m.sikorski0
2007-07-11T08:27:38Z

Hello,
I faced recently strange issue using remote gdb debugging (cross i386-ppc). With ~60 threaded application debugging does not work well.

Info threads returns incomplete information:
(gdb) info threads
60 Thread 2150 0x00000000 in ?? ()
59 Thread 2151 0x00000000 in ?? ()
58 Thread 2152 0x00000000 in ?? ()
57 Thread 2153 0x00000000 in ?? ()
56 Thread 2155 0x00000000 in ?? ()
55 Thread 2156 0x00000000 in ?? ()
54 Thread 2157 0x00000000 in ?? ()
...
Problem does not exist when I try to debug ~17 threaded application, and debugging works fine with the same cross-configuration:
(gdb) info threads
17 Thread 8563 0x0f211518 in do_sigwaitinfo () from /tftpboot/nfs/lib/tls/libc.so.6
16 Thread 8564 0x0f93670c in sem_wait@GLIBC_2.0 () from /tftpboot/nfs/lib/tls/libpthread.so.0
15 Thread 8565 0x0f93670c in sem_wait@GLIBC_2.0 () from /tftpboot/nfs/lib/tls/libpthread.so.0
14 Thread 8566 0x0f934264 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /tftpboot/nfs/lib/tls/libpthread.so.0
13 Thread 8567 0x0f933ea8 in pthread_cond_wait@@GLIBC_2.3.2 () from /tftpboot/nfs/lib/tls/libpthread.so.0
12 Thread 8568 0x0f29ca4c in ?? () from /tftpboot/nfs/lib/tls/libc.so.6
11 Thread 8569 0x0f934264 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /tftpboot/nfs/lib/tls/libpthread.so.0
...

Also when I'm usling local gdb and attach to ~60 threaded application info threads shows correct output, so problem does not exist.

Is this a bug or still something is misconfigured?

My environment:
GDB 6.6
gdbserver on ppc
gdb on i386-linux or i386-cygwin (on both results are the same 17 threads work fine, 60 are having problem)
I'm also using this with Eclipse with great results on 17 threads while in 60 threads after hitting breakpoint stepping is really slow and practically does not work.

Regards