Mirror of the gdb mailing list
 help / color / mirror / Atom feed
* Re: Remote mutli-threaded debugging with large number of threads
@ 2007-07-16 11:38 m.sikorski0
  2007-07-16 11:49 ` m.sikorski0
  2007-07-16 12:02 ` Daniel Jacobowitz
  0 siblings, 2 replies; 7+ messages in thread
From: m.sikorski0 @ 2007-07-16 11:38 UTC (permalink / raw)
  To: gdb, Jim Blandy, gdb; +Cc: gdb

After looking further into it and trying to narrow down issue cause I found out that probably not number of threads does matter here, but amount of debug information or binary size.
The improper case operated on binary of ~17MB (with debug symbols) - after removing symbols from all app threads except of one it seems to be working fine (binary size reduced to ~7MB).

Does anyone have any comments/suggestions? Is there any configuration change to support large binaries or is this simply a bug in GDB?
Regards
Maciej Sikorski


m.sikorski0@poczta.onet.pl napisa³:
>Here are logs from this case (and for good one as comparison below). 
>(gdb) info threads
>Sending packet: $mf933d58,4#a3...Ack
>Packet received: 9421ffa0
>Sending packet: $mf933d5c,4#ce...Ack
>Packet received: 7c0802a6
>Sending packet: $mf933d60,4#9c...Ack
>Packet received: 480182bd
>Sending packet: $mf933d64,4#a0...Ack
>Packet received: 93010040
>Sending packet: $mf933d64,4#a0...Ack
>Packet received: 93010040
>Sending packet: $mf933d68,4#a4...Ack
>Packet received: 7c982378
>Sending packet: $mf933d6c,4#cf...Ack
>Packet received: 93a10054
>Sending packet: $mf933d70,4#9d...Ack
>Packet received: 3ba00000
>Sending packet: $mf933d74,4#a1...Ack
>Packet received: 93c10058
>Sending packet: $mf933d78,4#a5...Ack
>Packet received: 7fc802a6
>Sending packet: $mf933d7c,4#d0...Ack
>Packet received: 93e1005c
>Sending packet: $mf933d80,4#9e...Ack
>Packet received: 7c7f1b78
>Sending packet: $mf933d84,4#a2...Ack
>Packet received: 90010064
>Sending packet: $mf933d88,4#a6...Ack
>Packet received: 38000001
>Sending packet: $mf933d8c,4#d1...Ack
>Packet received: 92e1003c
>Sending packet: $mf933d90,4#9f...Ack
>Packet received: 93210044
>Sending packet: $mf933d94,4#a3...Ack
>Packet received: 93410048
>Sending packet: $mf933d98,4#a7...Ack
>Packet received: 9361004c
>Sending packet: $mf933d9c,4#d2...Ack
>Packet received: 93810050
>Sending packet: $mf933da0,4#c7...Ack
>Packet received: 7d201828
>Sending packet: $m7ffff360,4#35...Ack
>Packet received: 7ffff3c0
>Sending packet: $qfThreadInfo#bb...Ack
>Packet received: m5138
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5288
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5287
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5286
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5285
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5284
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5283
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5282
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5281
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5203
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m516d
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m516c
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m516b
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m516a
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5169
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5168
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5167
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5166
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5165
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5164
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5163
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5162
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5161
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5160
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m515f
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m515e
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m515d
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m515c
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m515b
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m515a
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5159
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5158
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5157
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5156
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5155
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5154
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5153
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5152
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5151
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5150
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m514f
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m514e
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m514d
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m514c
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m514b
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m514a
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5149
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5147
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5146
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5144
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5143
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5142
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5141
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5140
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m513f
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m513e
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m513d
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m513c
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m513b
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m513a
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5139
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: l
>Sending packet: $qThreadExtraInfo,5139#57...Ack
>Packet received:
>Sending packet: $qP0000001f0000000000005139#8a...Ack
>Packet received:
>Sending packet: $Hg5139#81...Ack
>Packet received: OK
>Sending packet: $p40#d4...Ack
>Packet received:
>Sending packet: $g#67...Ack
>Packet received: 000000b0308281803082ff8000000004308282500000000000000008000000000002d0000000000030828b780000000048044422105724bc39c0629839c0627839c062580ff05c5c300287580ffef8c00fe968040f94c2380ff05c900ff05c7c0ff05c780ff05c740ff05c680ff05c6400000002308282500ff0c71c30828250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f0fa5180002d000580444420f0fa62c000000000000000000000000
>Sending packet: $m0,4#fd...Ack
>Packet received: E01
>Sending packet: $m0,4#fd...Ack
>Packet received: E01
>Sending packet: $mfffffffc,4#fa...Ack
>Packet received: E01
>Sending packet: $mfffffffc,4#fa...Ack
>Packet received: E01
>Sending packet: $m0,4#fd...Ack
>Packet received: E01
>Sending packet: $m0,4#fd...Ack
>Packet received: E01
>Sending packet: $mfffffffc,4#fa...Ack
>Packet received: E01
>Sending packet: $mfffffffc,4#fa...Ack
>Packet received: E01
>  61 Thread 20793  0x00000000 in ?? ()
>Sending packet: $qP0000001f000000000000513a#b2...Ack
>Packet received:
>Sending packet: $Hg513a#a9...Ack
>Packet received: OK
>Sending packet: $g#67...Ack
>Packet received: 000000dd311442f03114bf80000000040000000000000000000000000f936aec0002d0000000000031144b7831144f88d4410000105724bc39c0629839c0627839c0625810b53048300287580000000010b53b083114449010b531d40000000000000002000000020000000010b531b010b52cc0000000020f94c02010b531b4000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f93670c0002d000380444820f9366f0000000002000000000000000
>Sending packet: $m0,4#fd...Ack
>Packet received: E01
>Sending packet: $m0,4#fd...Ack
>Packet received: E01
>Sending packet: $mfffffffc,4#fa...Ack
>Packet received: E01
>Sending packet: $mfffffffc,4#fa...Ack
>Packet received: E01
>Sending packet: $m0,4#fd...Ack
>Packet received: E01
>Sending packet: $m0,4#fd...Ack
>Packet received: E01
>Sending packet: $mfffffffc,4#fa...Ack
>Packet received: E01
>Sending packet: $mfffffffc,4#fa...Ack
>Packet received: E01
>  60 Thread 20794  0x00000000 in ?? ()
>
>
>good case:
>(gdb) info threads
>Sending packet: $mf933d58,4#a3...Ack
>Packet received: 9421ffa0
>Sending packet: $mf933d5c,4#ce...Ack
>Packet received: 7c0802a6
>Sending packet: $mf933d60,4#9c...Ack
>Packet received: 480182bd
>Sending packet: $mf933d64,4#a0...Ack
>Packet received: 93010040
>Sending packet: $mf933d64,4#a0...Ack
>Packet received: 93010040
>Sending packet: $mf933d68,4#a4...Ack
>Packet received: 7c982378
>Sending packet: $mf933d6c,4#cf...Ack
>Packet received: 93a10054
>Sending packet: $mf933d70,4#9d...Ack
>Packet received: 3ba00000
>Sending packet: $mf933d74,4#a1...Ack
>Packet received: 93c10058
>Sending packet: $mf933d78,4#a5...Ack
>Packet received: 7fc802a6
>Sending packet: $mf933d7c,4#d0...Ack
>Packet received: 93e1005c
>Sending packet: $mf933d80,4#9e...Ack
>Packet received: 7c7f1b78
>Sending packet: $mf933d84,4#a2...Ack
>Packet received: 90010064
>Sending packet: $mf933d88,4#a6...Ack
>Packet received: 38000001
>Sending packet: $mf933d8c,4#d1...Ack
>Packet received: 92e1003c
>Sending packet: $mf933d90,4#9f...Ack
>Packet received: 93210044
>Sending packet: $mf933d94,4#a3...Ack
>Packet received: 93410048
>Sending packet: $mf933d98,4#a7...Ack
>Packet received: 9361004c
>Sending packet: $mf933d9c,4#d2...Ack
>Packet received: 93810050
>Sending packet: $mf933da0,4#c7...Ack
>Packet received: 7d201828
>Sending packet: $m7ffff350,4#34...Ack
>Packet received: 7ffff3b0
>Sending packet: $qfThreadInfo#bb...Ack
>Packet received: m2a02
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m2a50
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m2a4f
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m2a11
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m2a10
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m2a0e
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m2a0d
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m2a0c
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m2a0b
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m2a0a
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m2a09
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m2a08
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m2a07
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m2a06
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m2a05
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m2a04
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m2a03
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: l
>Sending packet: $qThreadExtraInfo,2a03#7b...Ack
>Packet received:
>Sending packet: $qP0000001f0000000000002a03#ae...Ack
>Packet received:
>Sending packet: $Hg2a03#a5...Ack
>Packet received: OK
>Sending packet: $p40#d4...Ack
>Packet received:
>Sending packet: $g#67...Ack
>Packet received: 000000b0308281803082ff8000000004308282500000000000000008000000000002d0000000000030828b7800000000480444221004eff839c0629839c0627839c062580ff05c5c300287580ffef8c00fe968040f94c2380ff05c900ff05c7c0ff05c780ff05c740ff05c680ff05c6400000002308282500ff0c71c30828250bff000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f2115180002d000580444220f21162c000000000000000000000000
>Sending packet: $mf211518,4#65...Ack
>Packet received: 7c000026
>Sending packet: $mf211514,4#61...Ack
>Packet received: 44000002
>Sending packet: $mf211518,4#65...Ack
>Packet received: 7c000026
>Sending packet: $mf211514,4#61...Ack
>Packet received: 44000002
>  17 Thread 10755  0x0f211518 in do_sigwaitinfo () from /tftpboot/nfs/lib/tls/libc.so.6
>Sending packet: $qP0000001f0000000000002a04#af...Ack
>Packet received:
>Sending packet: $Hg2a04#a6...Ack
>Packet received: OK
>Sending packet: $g#67...Ack
>Packet received: 000000dd311442f03114bf80000000040000000000000000000000000f936aec0002d0000000000031144b7831144f88d0a400001004eff839c0629839c0627839c0625810061e603002875800000000100623f83114449010061fec0000000000000002000000020000000010061fc810061ad8000000020f94c02010061fccbff000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f93670c0002d000380444220f9366f0000000002000000000000000
>Sending packet: $mf93670c,4#9f...Ack
>Packet received: 7c000026
>Sending packet: $mf936708,4#74...Ack
>Packet received: 44000002
>Sending packet: $mf93670c,4#9f...Ack
>Packet received: 7c000026
>Sending packet: $mf936708,4#74...Ack
>Packet received: 44000002
>  16 Thread 10756  0x0f93670c in sem_wait@GLIBC_2.0 () from /tftpboot/nfs/lib/tls/libpthread.so.0
>Sending packet: $qP0000001f0000000000002a05#b0...Ack
>
>U¿ytkownik Jim Blandy <jimb@codesourcery.com> napisa³:
>>m.sikorski0@poczta.onet.pl writes:
>>> 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 ?? ()
>>> ...
>>
>>That is disappointing.  Can you type 'set debug remote 1' and see what
>>information the stub is returning to GDB for these threads?
>>
>


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Remote mutli-threaded debugging with large number of threads
  2007-07-16 11:38 Remote mutli-threaded debugging with large number of threads m.sikorski0
@ 2007-07-16 11:49 ` m.sikorski0
  2007-07-16 12:02 ` Daniel Jacobowitz
  1 sibling, 0 replies; 7+ messages in thread
From: m.sikorski0 @ 2007-07-16 11:49 UTC (permalink / raw)
  To: gdb, Jim Blandy, gdb; +Cc: gdb

After looking further into it and trying to narrow down issue cause I found out that probably not number of threads does matter here, but amount of debug information or binary size.
The improper case operated on binary of ~17MB (with debug symbols) - after removing symbols from all app threads except of one it seems to be working fine (binary size reduced to ~7MB).

Does anyone have any comments/suggestions? Is there any configuration change to support large binaries or is this simply a bug in GDB?
Regards
Maciej Sikorski


m.sikorski0@poczta.onet.pl napisa³:
>Here are logs from this case (and for good one as comparison below). 
>(gdb) info threads
>Sending packet: $mf933d58,4#a3...Ack
>Packet received: 9421ffa0
>Sending packet: $mf933d5c,4#ce...Ack
>Packet received: 7c0802a6
>Sending packet: $mf933d60,4#9c...Ack
>Packet received: 480182bd
>Sending packet: $mf933d64,4#a0...Ack
>Packet received: 93010040
>Sending packet: $mf933d64,4#a0...Ack
>Packet received: 93010040
>Sending packet: $mf933d68,4#a4...Ack
>Packet received: 7c982378
>Sending packet: $mf933d6c,4#cf...Ack
>Packet received: 93a10054
>Sending packet: $mf933d70,4#9d...Ack
>Packet received: 3ba00000
>Sending packet: $mf933d74,4#a1...Ack
>Packet received: 93c10058
>Sending packet: $mf933d78,4#a5...Ack
>Packet received: 7fc802a6
>Sending packet: $mf933d7c,4#d0...Ack
>Packet received: 93e1005c
>Sending packet: $mf933d80,4#9e...Ack
>Packet received: 7c7f1b78
>Sending packet: $mf933d84,4#a2...Ack
>Packet received: 90010064
>Sending packet: $mf933d88,4#a6...Ack
>Packet received: 38000001
>Sending packet: $mf933d8c,4#d1...Ack
>Packet received: 92e1003c
>Sending packet: $mf933d90,4#9f...Ack
>Packet received: 93210044
>Sending packet: $mf933d94,4#a3...Ack
>Packet received: 93410048
>Sending packet: $mf933d98,4#a7...Ack
>Packet received: 9361004c
>Sending packet: $mf933d9c,4#d2...Ack
>Packet received: 93810050
>Sending packet: $mf933da0,4#c7...Ack
>Packet received: 7d201828
>Sending packet: $m7ffff360,4#35...Ack
>Packet received: 7ffff3c0
>Sending packet: $qfThreadInfo#bb...Ack
>Packet received: m5138
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5288
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5287
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5286
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5285
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5284
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5283
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5282
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5281
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5203
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m516d
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m516c
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m516b
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m516a
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5169
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5168
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5167
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5166
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5165
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5164
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5163
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5162
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5161
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5160
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m515f
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m515e
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m515d
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m515c
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m515b
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m515a
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5159
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5158
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5157
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5156
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5155
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5154
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5153
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5152
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5151
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5150
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m514f
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m514e
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m514d
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m514c
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m514b
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m514a
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5149
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5147
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5146
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5144
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5143
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5142
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5141
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5140
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m513f
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m513e
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m513d
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m513c
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m513b
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m513a
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m5139
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: l
>Sending packet: $qThreadExtraInfo,5139#57...Ack
>Packet received:
>Sending packet: $qP0000001f0000000000005139#8a...Ack
>Packet received:
>Sending packet: $Hg5139#81...Ack
>Packet received: OK
>Sending packet: $p40#d4...Ack
>Packet received:
>Sending packet: $g#67...Ack
>Packet received: 000000b0308281803082ff8000000004308282500000000000000008000000000002d0000000000030828b780000000048044422105724bc39c0629839c0627839c062580ff05c5c300287580ffef8c00fe968040f94c2380ff05c900ff05c7c0ff05c780ff05c740ff05c680ff05c6400000002308282500ff0c71c30828250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f0fa5180002d000580444420f0fa62c000000000000000000000000
>Sending packet: $m0,4#fd...Ack
>Packet received: E01
>Sending packet: $m0,4#fd...Ack
>Packet received: E01
>Sending packet: $mfffffffc,4#fa...Ack
>Packet received: E01
>Sending packet: $mfffffffc,4#fa...Ack
>Packet received: E01
>Sending packet: $m0,4#fd...Ack
>Packet received: E01
>Sending packet: $m0,4#fd...Ack
>Packet received: E01
>Sending packet: $mfffffffc,4#fa...Ack
>Packet received: E01
>Sending packet: $mfffffffc,4#fa...Ack
>Packet received: E01
>  61 Thread 20793  0x00000000 in ?? ()
>Sending packet: $qP0000001f000000000000513a#b2...Ack
>Packet received:
>Sending packet: $Hg513a#a9...Ack
>Packet received: OK
>Sending packet: $g#67...Ack
>Packet received: 000000dd311442f03114bf80000000040000000000000000000000000f936aec0002d0000000000031144b7831144f88d4410000105724bc39c0629839c0627839c0625810b53048300287580000000010b53b083114449010b531d40000000000000002000000020000000010b531b010b52cc0000000020f94c02010b531b4000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f93670c0002d000380444820f9366f0000000002000000000000000
>Sending packet: $m0,4#fd...Ack
>Packet received: E01
>Sending packet: $m0,4#fd...Ack
>Packet received: E01
>Sending packet: $mfffffffc,4#fa...Ack
>Packet received: E01
>Sending packet: $mfffffffc,4#fa...Ack
>Packet received: E01
>Sending packet: $m0,4#fd...Ack
>Packet received: E01
>Sending packet: $m0,4#fd...Ack
>Packet received: E01
>Sending packet: $mfffffffc,4#fa...Ack
>Packet received: E01
>Sending packet: $mfffffffc,4#fa...Ack
>Packet received: E01
>  60 Thread 20794  0x00000000 in ?? ()
>
>
>good case:
>(gdb) info threads
>Sending packet: $mf933d58,4#a3...Ack
>Packet received: 9421ffa0
>Sending packet: $mf933d5c,4#ce...Ack
>Packet received: 7c0802a6
>Sending packet: $mf933d60,4#9c...Ack
>Packet received: 480182bd
>Sending packet: $mf933d64,4#a0...Ack
>Packet received: 93010040
>Sending packet: $mf933d64,4#a0...Ack
>Packet received: 93010040
>Sending packet: $mf933d68,4#a4...Ack
>Packet received: 7c982378
>Sending packet: $mf933d6c,4#cf...Ack
>Packet received: 93a10054
>Sending packet: $mf933d70,4#9d...Ack
>Packet received: 3ba00000
>Sending packet: $mf933d74,4#a1...Ack
>Packet received: 93c10058
>Sending packet: $mf933d78,4#a5...Ack
>Packet received: 7fc802a6
>Sending packet: $mf933d7c,4#d0...Ack
>Packet received: 93e1005c
>Sending packet: $mf933d80,4#9e...Ack
>Packet received: 7c7f1b78
>Sending packet: $mf933d84,4#a2...Ack
>Packet received: 90010064
>Sending packet: $mf933d88,4#a6...Ack
>Packet received: 38000001
>Sending packet: $mf933d8c,4#d1...Ack
>Packet received: 92e1003c
>Sending packet: $mf933d90,4#9f...Ack
>Packet received: 93210044
>Sending packet: $mf933d94,4#a3...Ack
>Packet received: 93410048
>Sending packet: $mf933d98,4#a7...Ack
>Packet received: 9361004c
>Sending packet: $mf933d9c,4#d2...Ack
>Packet received: 93810050
>Sending packet: $mf933da0,4#c7...Ack
>Packet received: 7d201828
>Sending packet: $m7ffff350,4#34...Ack
>Packet received: 7ffff3b0
>Sending packet: $qfThreadInfo#bb...Ack
>Packet received: m2a02
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m2a50
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m2a4f
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m2a11
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m2a10
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m2a0e
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m2a0d
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m2a0c
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m2a0b
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m2a0a
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m2a09
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m2a08
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m2a07
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m2a06
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m2a05
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m2a04
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: m2a03
>Sending packet: $qsThreadInfo#c8...Ack
>Packet received: l
>Sending packet: $qThreadExtraInfo,2a03#7b...Ack
>Packet received:
>Sending packet: $qP0000001f0000000000002a03#ae...Ack
>Packet received:
>Sending packet: $Hg2a03#a5...Ack
>Packet received: OK
>Sending packet: $p40#d4...Ack
>Packet received:
>Sending packet: $g#67...Ack
>Packet received: 000000b0308281803082ff8000000004308282500000000000000008000000000002d0000000000030828b7800000000480444221004eff839c0629839c0627839c062580ff05c5c300287580ffef8c00fe968040f94c2380ff05c900ff05c7c0ff05c780ff05c740ff05c680ff05c6400000002308282500ff0c71c30828250bff000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f2115180002d000580444220f21162c000000000000000000000000
>Sending packet: $mf211518,4#65...Ack
>Packet received: 7c000026
>Sending packet: $mf211514,4#61...Ack
>Packet received: 44000002
>Sending packet: $mf211518,4#65...Ack
>Packet received: 7c000026
>Sending packet: $mf211514,4#61...Ack
>Packet received: 44000002
>  17 Thread 10755  0x0f211518 in do_sigwaitinfo () from /tftpboot/nfs/lib/tls/libc.so.6
>Sending packet: $qP0000001f0000000000002a04#af...Ack
>Packet received:
>Sending packet: $Hg2a04#a6...Ack
>Packet received: OK
>Sending packet: $g#67...Ack
>Packet received: 000000dd311442f03114bf80000000040000000000000000000000000f936aec0002d0000000000031144b7831144f88d0a400001004eff839c0629839c0627839c0625810061e603002875800000000100623f83114449010061fec0000000000000002000000020000000010061fc810061ad8000000020f94c02010061fccbff000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f93670c0002d000380444220f9366f0000000002000000000000000
>Sending packet: $mf93670c,4#9f...Ack
>Packet received: 7c000026
>Sending packet: $mf936708,4#74...Ack
>Packet received: 44000002
>Sending packet: $mf93670c,4#9f...Ack
>Packet received: 7c000026
>Sending packet: $mf936708,4#74...Ack
>Packet received: 44000002
>  16 Thread 10756  0x0f93670c in sem_wait@GLIBC_2.0 () from /tftpboot/nfs/lib/tls/libpthread.so.0
>Sending packet: $qP0000001f0000000000002a05#b0...Ack
>
>U¿ytkownik Jim Blandy <jimb@codesourcery.com> napisa³:
>>m.sikorski0@poczta.onet.pl writes:
>>> 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 ?? ()
>>> ...
>>
>>That is disappointing.  Can you type 'set debug remote 1' and see what
>>information the stub is returning to GDB for these threads?
>>
>


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Remote mutli-threaded debugging with large number of threads
  2007-07-16 11:38 Remote mutli-threaded debugging with large number of threads m.sikorski0
  2007-07-16 11:49 ` m.sikorski0
@ 2007-07-16 12:02 ` Daniel Jacobowitz
  1 sibling, 0 replies; 7+ messages in thread
From: Daniel Jacobowitz @ 2007-07-16 12:02 UTC (permalink / raw)
  To: m.sikorski0; +Cc: gdb, Jim Blandy

On Mon, Jul 16, 2007 at 01:38:08PM +0200, m.sikorski0@poczta.onet.pl wrote:
> After looking further into it and trying to narrow down issue cause I found out that probably not number of threads does matter here, but amount of debug information or binary size.
> The improper case operated on binary of ~17MB (with debug symbols) - after removing symbols from all app threads except of one it seems to be working fine (binary size reduced to ~7MB).
> 
> Does anyone have any comments/suggestions? Is there any configuration change to support large binaries or is this simply a bug in GDB?

It is extremely unlikely that this is it either.  It is probably some
specific characteristic of the second application, e.g. a confusing
bit of debug info.

-- 
Daniel Jacobowitz
CodeSourcery


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Remote mutli-threaded debugging with large number of threads
@ 2007-07-18  3:41 Maciej Sikorski
  0 siblings, 0 replies; 7+ messages in thread
From: Maciej Sikorski @ 2007-07-18  3:41 UTC (permalink / raw)
  To: gdb

Comparison of correct situation logs from connection to one with incorrect behaviour (the same application that starts working after different one opens connection first) shows something like this:
Correct case:
Packet received: 000000b0308281803082ff8000000004308282500000000000000008000000000002d0000000000030828b780000000048044422105724bc39c0629839c0627839c062580ff05c5c300287580ffef8c00fe968040f94c2380ff05c900ff05c7c0ff05c780ff05c740ff05c680ff05c6400000002308282500ff0c71c30828250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f0fa5180002d000580444420f0fa62c000000000000000000000000
Sending packet: $mf0fa518,4#c8...Ack
Packet received: 7c000026

Incorrect case:
Packet received: 000000b0308281803082ff8000000004308282500000000000000008000000000002d0000000000030828b780000000048044422105724bc39c0629839c0627839c062580ff05c5c300287580ffef8c00fe968040f94c2380ff05c900ff05c7c0ff05c780ff05c740ff05c680ff05c6400000002308282500ff0c71c30828250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f0fa5180002d000580444420f0fa62c000000000000000000000000
Sending packet: $m0,4#fd...Ack
Packet received: E01
E01
    The stub-side thread library does not have the required thread local
    storage support.

I assume hex after $m is address that gdb is asking about

How is this possible that in bad case address is 0?
 
Logs before these sequences do not show any differences. It looks like that GDB in both cases received f0fa518, but in second case it sends $m0 instead of $mf0fa518. 
It also looks strange to me that after "opening pipe" (first attach to different application that always works) problem is gone.

Can you help with further diagnosis and potential root cause finding?

Maciej Sikorski



m.sikorski0@poczta.onet.pl napisa³:
>Yes, I agree it has nothing to do with application size - just confirmed that I can see correctly threads of 17 meg binary. 
>Interesting thing is that after running debug session on first working application (one that problem never appeared), then detaching and attaching to second one everything works perfectly.
>
>Gdbserver is restarted and attached to a second app. It seems that it is a matter of configuration GDB keeps from previous connection.
>This is a kind of workaround for me, but still dont know root cause. Any suggestions what I can look for in remote debug logs?
>
>Maciej Sikorski
>


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Remote mutli-threaded debugging with large number of threads
@ 2007-07-16 15:44 m.sikorski0
  0 siblings, 0 replies; 7+ messages in thread
From: m.sikorski0 @ 2007-07-16 15:44 UTC (permalink / raw)
  To: gdb

Yes, I agree it has nothing to do with application size - just confirmed that I can see correctly threads of 17 meg binary. 
Interesting thing is that after running debug session on first working application (one that problem never appeared), then detaching and attaching to second one everything works perfectly.

Gdbserver is restarted and attached to a second app. It seems that it is a matter of configuration GDB keeps from previous connection.
This is a kind of workaround for me, but still dont know root cause. Any suggestions what I can look for in remote debug logs?

Maciej Sikorski



U¿ytkownik Daniel Jacobowitz <drow@false.org> napisa³:
>
>It is extremely unlikely that this is it either.  It is probably some
>specific characteristic of the second application, e.g. a confusing
>bit of debug info.
>
>-- 
>Daniel Jacobowitz
>CodeSourcery
>


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Remote mutli-threaded debugging with large number of threads
  2007-07-11  8:27 m.sikorski0
@ 2007-07-11 19:15 ` Jim Blandy
  0 siblings, 0 replies; 7+ messages in thread
From: Jim Blandy @ 2007-07-11 19:15 UTC (permalink / raw)
  To: m.sikorski0; +Cc: gdb


m.sikorski0@poczta.onet.pl writes:
> 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 ?? ()
> ...

That is disappointing.  Can you type 'set debug remote 1' and see what
information the stub is returning to GDB for these threads?


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Remote mutli-threaded debugging with large number of threads
@ 2007-07-11  8:27 m.sikorski0
  2007-07-11 19:15 ` Jim Blandy
  0 siblings, 1 reply; 7+ messages in thread
From: m.sikorski0 @ 2007-07-11  8:27 UTC (permalink / raw)
  To: gdb

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
Maciej Sikorski






^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2007-07-17 13:46 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2007-07-16 11:38 Remote mutli-threaded debugging with large number of threads m.sikorski0
2007-07-16 11:49 ` m.sikorski0
2007-07-16 12:02 ` Daniel Jacobowitz
  -- strict thread matches above, loose matches on Subject: below --
2007-07-18  3:41 Maciej Sikorski
2007-07-16 15:44 m.sikorski0
2007-07-11  8:27 m.sikorski0
2007-07-11 19:15 ` Jim Blandy

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox