This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
Re: [pushed][PATCH v3 3/4] Extended-remote exec test
- From: Pedro Alves <palves at redhat dot com>
- To: Don Breazeal <donb at codesourcery dot com>, gdb-patches at sourceware dot org
- Date: Tue, 15 Sep 2015 16:45:28 +0100
- Subject: Re: [pushed][PATCH v3 3/4] Extended-remote exec test
- Authentication-results: sourceware.org; auth=none
- References: <1441996698-12694-1-git-send-email-donb at codesourcery dot com> <1441996698-12694-3-git-send-email-donb at codesourcery dot com>
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.
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
--
1.9.3