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: [pushed][PATCH v3 3/4] Extended-remote exec test


On 9/15/2015 8:45 AM, Pedro Alves wrote:
> Hi Don,
> 
> On 09/11/2015 07:38 PM, Don Breazeal wrote:
>>  	gdb_breakpoint [gdb_get_line_number "break-here"]
>> -	gdb_continue_to_breakpoint "break-here" ".* break-here .*"
>> +	gdb_test_multiple "continue" "continue to breakpoint" {
>> +	    -re ".*Breakpoint.*break-here.*" {
>> +	        pass "continue to breakpoint"
>> +	    }
>> +	}
>>  
> 
> This change is causing a regression.  Was there a reason for it?
> AFAICS, none of the other non-ldr-exc-*.exp files got this change.

No, I intended to revert that change, which I did for the other
non-ldr-exc-* files.  You had pointed out that the change introduced
a race.

> 
> Fix below.
> 
> From 5cd484be64e40d0423cc7fe8d8355421e4da1fff Mon Sep 17 00:00:00 2001
> From: Pedro Alves <palves@redhat.com>
> Date: Tue, 15 Sep 2015 16:32:19 +0100
> Subject: [PATCH] Fix gdb.threads/non-ldr-exc-3.exp race
> 
> gdb.threads/non-ldr-exc-3.exp is sometimes failing like this:
> 
>  [Switching to Thread 6831.6832]
> 
>  Breakpoint 2, thread_execler (arg=0x0) at /home/pedro/gdb/mygit/build/../src/gdb/testsuite/gdb.threads/non-ldr-exc-3.c:41
>  41        if (execl (image, image, argv1, NULL) == -1) /* break-here */
>  PASS: gdb.threads/non-ldr-exc-3.exp: lock-sched=on,non-stop=off: continue to breakpoint
>  (gdb) set scheduler-locking on
>  (gdb) FAIL: gdb.threads/non-ldr-exc-3.exp: lock-sched=on,non-stop=off: set scheduler-locking on
> 
> The problem is that the gdb_test_multiple is missing the prompt
> anchor.  The problem was introduced by 2fd33e9448.  This reverts the
> hunk that introduced the problem, reverting back to
> gdb_continue_to_breakpoint.
> 
> gdb/testsuite/ChangeLog:
> 2015-09-15  Pedro Alves  <palves@redhat.com>
> 
> 	* gdb.threads/non-ldr-exc-3.exp (do_test): Use
> 	gdb_continue_to_breakpoint instead of gdb_test_multiple.
> ---
>  gdb/testsuite/gdb.threads/non-ldr-exc-3.exp | 6 +-----
>  1 file changed, 1 insertion(+), 5 deletions(-)
> 
> diff --git a/gdb/testsuite/gdb.threads/non-ldr-exc-3.exp b/gdb/testsuite/gdb.threads/non-ldr-exc-3.exp
> index 3e7a3a1..188b825 100644
> --- a/gdb/testsuite/gdb.threads/non-ldr-exc-3.exp
> +++ b/gdb/testsuite/gdb.threads/non-ldr-exc-3.exp
> @@ -45,11 +45,7 @@ proc do_test { lock_sched nonstop } {
>  	}
>  
>  	gdb_breakpoint [gdb_get_line_number "break-here"]
> -	gdb_test_multiple "continue" "continue to breakpoint" {
> -	    -re ".*Breakpoint.*break-here.*" {
> -	        pass "continue to breakpoint"
> -	    }
> -	}
> +	gdb_continue_to_breakpoint "break-here" ".* break-here .*"
>  
>  	# Also test with sched-lock to make sure we can follow the
>  	# non-leader thread execing even though the main thread wasn't
> 


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