This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [testsuite patch]#2 Fix PR threads/19422 regression + Guile regression [Re: [PATCH+doc] Fix PR threads/19422 - show which thread caused stop]


On 01/22/2016 08:11 PM, Pedro Alves wrote:
> On 01/22/2016 08:05 PM, Jan Kratochvil wrote:

>> racy case #2:
>>
>> (xgdb) PASS: gdb.gdb/selftest.exp: Set xgdb_prompt
>> ^M
>> Thread 1 "xgdb" received signal SIGINT, Interrupt.^M
>> 0x00007ffff583bfdd in poll () from /lib64/libc.so.6^M
>> (gdb) FAIL: gdb.gdb/selftest.exp: send ^C to child process
>> signal SIGINT^M
>> Continuing with signal SIGINT.^M
>> ^C^M
>> Thread 2 "xgdb" received signal SIGINT, Interrupt.^M
>> [Switching to Thread 0x7ffff3b7f700 (LWP 13227)]^M
> 
> So you need to adjust your patch in the bit that matched
> "Thread 1", right?

And I notice now that this expects the thread name to be the
the program name:

 -	    -re "Program received signal SIGINT.*$gdb_prompt $" {
 +	    -re "(Thread 1 \"xgdb\"|Program) received signal SIGINT.*$gdb_prompt $" {

Not all targets support thread names, and even those that do, not all
use the program name as default thread name -- I think that's only true
for GNU/Linux, actually.  So I think it's best to not expect that, like:

 	    -re "(Thread .*|Program) received signal SIGINT.*$gdb_prompt $" {
or:
	    -re " received signal SIGINT.*$gdb_prompt $" {

Thanks,
Pedro Alves


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]