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]

[patch] Fix racy FAILs #2 due to "read1" [Re: [PATCH] add -s option to make -break-insert support dprintf]


On Tue, 21 May 2013 06:24:16 +0200, Hui Zhu wrote:
> Checked in http://sourceware.org/ml/gdb-cvs/2013-05/msg00193.html

I got another racy FAIL today:

FAIL: gdb.mi/mi-dprintf.exp: mi info dprintf second time

I found I forgot to run the "read1" reproducer with gdbserver yesterday, which
revealed more races.

I will check it in today.


Regards,
Jan


gdb/testsuite/
2013-05-23  Jan Kratochvil  <jan.kratochvil@redhat.com>

	PR testsuite/12649
	* gdb.mi/mi-dprintf.exp (mi_continue_dprintf) (mi 2nd dprintf): Replace
	$mi_gdb_prompt expectation by mi_expect_stop.
	(mi 1st dprintf, agent, mi 2nd dprintf, agent)
	(mi info dprintf second time): Replace them by mi_send_resuming_command
	and mi_expect_stop.

diff --git a/gdb/testsuite/gdb.mi/mi-dprintf.exp b/gdb/testsuite/gdb.mi/mi-dprintf.exp
index ea8b3a8..3509963 100644
--- a/gdb/testsuite/gdb.mi/mi-dprintf.exp
+++ b/gdb/testsuite/gdb.mi/mi-dprintf.exp
@@ -83,7 +83,7 @@ proc mi_continue_dprintf {args} {
 	set msg "mi 2nd dprintf"
 	mi_send_resuming_command "exec-continue" "$msg continue"
 	gdb_expect {
-            -re ".*At foo entry.*arg=1235, g=2222.*$mi_gdb_prompt$" {
+            -re ".*At foo entry.*arg=1235, g=2222" {
 		pass $msg
 	    }
 	    -re ".*$mi_gdb_prompt$" {
@@ -93,6 +93,7 @@ proc mi_continue_dprintf {args} {
 		fail $msg
             }
 	}
+	mi_expect_stop ".*" ".*" ".*" ".*" ".*" "" "$msg 2nd stop"
     }
 }
 
@@ -135,11 +136,28 @@ gdb_expect {
 if $target_can_dprintf {
     mi_run_cmd
 
-    mi_gdb_test "continue" ".*breakpoint-hit.*func=\"foo\".*" "mi 1st dprintf, agent"
+    mi_expect_stop ".*" ".*" ".*" ".*" ".*" "" "mi expect stop"
 
-    mi_gdb_test "continue" ".*breakpoint-hit.*func=\"foo\".*" "mi 2nd dprintf, agent"
+    mi_send_resuming_command "exec-continue" "mi 1st dprintf continue, agent"
+    mi_expect_stop ".*" "foo" ".*" ".*" ".*" "" "mi 1st dprintf, agent"
 
-    mi_gdb_test "6-break-info" ".*modified.*" "mi info dprintf second time"
+    mi_send_resuming_command "exec-continue" "mi 2nd dprintf continue, agent"
+
+    # The =breakpoint-modified text is a part of the "-exec-continue" output.
+    set msg "mi info dprintf second time"
+    gdb_expect {
+	-re "=breakpoint-modified," {
+	    pass $msg
+	}
+	-re ".*$mi_gdb_prompt$" {
+	    fail "$msg"
+	}
+	timeout {
+	    fail "$msg"
+	}
+    }
+
+    mi_expect_stop ".*" "foo" ".*" ".*" ".*" "" "mi 2nd dprintf, agent"
 }
 
 mi_gdb_test "set dprintf-style foobar" ".*error.*" "mi set dprintf style to an unrecognized type"


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