[testsuite] Fix paginate-*.exp race for "read1"

Message ID 20140722183816.GA11930@host2.jankratochvil.net
State New, archived
Headers

Commit Message

Jan Kratochvil July 22, 2014, 6:38 p.m. UTC
  Hi,

even with this "read1"-fix patch it is not fully reliable.
But this time I do not have a reliable reproducer, it just FAILs during fully
parallel Fedora GDB build; but running the Fedora GDB test by hand PASSes.

+FAIL: gdb.base/paginate-bg-execution.exp: cancel with ctrl-c: cancel pagination (timeout)
+FAIL: gdb.base/paginate-execution-startup.exp: cancel with ctrl-c: cancel pagination (timeout)

I have tried the attached patch but it has no effect.

continue&^M
Continuing.^M
(gdb) PASS: gdb.base/paginate-bg-execution.exp: cancel with ctrl-c: continue&
---Type <return> to continue, or q <return> to quit---PASS: gdb.base/paginate-bg-execution.exp: cancel with ctrl-c: continue& paginates
FAIL: gdb.base/paginate-bg-execution.exp: cancel with ctrl-c: cancel pagination (timeout)
^CQuit^M
(gdb) p 1^M
$1 = 1^M
(gdb) PASS: gdb.base/paginate-bg-execution.exp: cancel with ctrl-c: GDB accepts further input

Reading symbols from /unsafebuild-x86_64-redhat-linux-gnu/gdb/testsuite.unix.-m64/outputs/gdb.base/paginate-execution-startup/paginate-execution-startup...done.^M
---Type <return> to continue, or q <return> to quit---PASS: gdb.base/paginate-execution-startup.exp: cancel with ctrl-c: run to pagination
FAIL: gdb.base/paginate-execution-startup.exp: cancel with ctrl-c: cancel pagination (timeout)
^CQuit^M
(gdb) p 1^M
$1 = 1^M
(gdb) PASS: gdb.base/paginate-execution-startup.exp: cancel with ctrl-c: GDB accepts further input


Jan
  

Comments

Jan Kratochvil July 24, 2014, 8:34 p.m. UTC | #1
On Tue, 22 Jul 2014 20:38:16 +0200, Jan Kratochvil wrote:
> even with this "read1"-fix patch it is not fully reliable.
> But this time I do not have a reliable reproducer, it just FAILs during fully
> parallel Fedora GDB build; but running the Fedora GDB test by hand PASSes.
> 
> +FAIL: gdb.base/paginate-bg-execution.exp: cancel with ctrl-c: cancel pagination (timeout)
> +FAIL: gdb.base/paginate-execution-startup.exp: cancel with ctrl-c: cancel pagination (timeout)

These FAILs were due to
	readline-6.3-2.fc21.x86_64
and they PASS now with
	readline-6.3-3.fc22.x86_64
Some discussion about the update was here but I did not investigate it more:
	readline-6.3 is available
	https://bugzilla.redhat.com/show_bug.cgi?id=1071336

It was behaving the same also with your patch.


Jan
  

Patch

diff --git a/gdb/testsuite/gdb.base/paginate-bg-execution.exp b/gdb/testsuite/gdb.base/paginate-bg-execution.exp
index 3ba46a3..e1f908b 100644
--- a/gdb/testsuite/gdb.base/paginate-bg-execution.exp
+++ b/gdb/testsuite/gdb.base/paginate-bg-execution.exp
@@ -88,6 +88,7 @@  proc test_bg_execution_pagination_cancel { how } {
 
 	set test "cancel pagination"
 	if { $how == "ctrl-c" } {
+	    sleep 30
 	    send_gdb "\003"
 	} else {
 	    send_gdb "q\n"
diff --git a/gdb/testsuite/gdb.base/paginate-execution-startup.exp b/gdb/testsuite/gdb.base/paginate-execution-startup.exp
index 4dc2376..22958ab 100644
--- a/gdb/testsuite/gdb.base/paginate-execution-startup.exp
+++ b/gdb/testsuite/gdb.base/paginate-execution-startup.exp
@@ -147,6 +147,7 @@  proc test_fg_execution_pagination_cancel { how } {
 
 	set test "cancel pagination"
 	if { $how == "ctrl-c" } {
+	    sleep 30
 	    send_gdb "\003"
 	} else {
 	    send_gdb "q\n"