[committed][gdb/testsuite] Fix timeouts in gdb.threads/step-over-*.exp
Tom de Vries
tdevries@suse.de
Fri Mar 20 13:59:51 GMT 2020
Hi,
When running test-cases gdb.threads/step-over-lands-on-breakpoint.exp and
gdb.threads/step-over-trips-on-watchpoint.exp with target board
unix/-flto/-O0/-flto-partition=none/-ffat-lto-objects, we run into timeouts
due not being able to set a breakpoint and then trying to continue to that
breakpoint.
In total, we run into 186 timeouts, which roughly corresponds to half an hour:
...
$ grep "FAIL.*(timeout)" gdb.sum \
| awk '{print $2}' \
| sort \
| uniq -c
66 gdb.threads/step-over-lands-on-breakpoint.exp:
120 gdb.threads/step-over-trips-on-watchpoint.exp:
...
Fix this by bailing out if the first break fails.
Tested on x86_64-linux, both with native and with target board mentioned above.
Committed to trunk.
Thanks,
- Tom
[gdb/testsuite] Fix timeouts in gdb.threads/step-over-*.exp
gdb/testsuite/ChangeLog:
2020-03-20 Tom de Vries <tdevries@suse.de>
* gdb.threads/step-over-lands-on-breakpoint.exp (do_test): Bail out if
first break fails.
* gdb.threads/step-over-trips-on-watchpoint.exp: (do_test): Same.
---
gdb/testsuite/gdb.threads/step-over-lands-on-breakpoint.exp | 5 ++++-
gdb/testsuite/gdb.threads/step-over-trips-on-watchpoint.exp | 5 ++++-
2 files changed, 8 insertions(+), 2 deletions(-)
diff --git a/gdb/testsuite/gdb.threads/step-over-lands-on-breakpoint.exp b/gdb/testsuite/gdb.threads/step-over-lands-on-breakpoint.exp
index 64ef6e81bf..1921aff1e8 100644
--- a/gdb/testsuite/gdb.threads/step-over-lands-on-breakpoint.exp
+++ b/gdb/testsuite/gdb.threads/step-over-lands-on-breakpoint.exp
@@ -38,7 +38,10 @@ proc do_test {displaced command} {
gdb_test_no_output "set displaced-stepping $displaced"
- gdb_breakpoint [gdb_get_line_number "set wait-thread breakpoint here"]
+ set line [gdb_get_line_number "set wait-thread breakpoint here"]
+ if { ![gdb_breakpoint $line] } {
+ return
+ }
gdb_continue_to_breakpoint "run to wait-thread breakpoint"
gdb_test "info threads" "\\\* 1 .* 2 .*" "info threads shows all threads"
diff --git a/gdb/testsuite/gdb.threads/step-over-trips-on-watchpoint.exp b/gdb/testsuite/gdb.threads/step-over-trips-on-watchpoint.exp
index 7d5da52c9e..41c21aebb4 100644
--- a/gdb/testsuite/gdb.threads/step-over-trips-on-watchpoint.exp
+++ b/gdb/testsuite/gdb.threads/step-over-trips-on-watchpoint.exp
@@ -57,7 +57,10 @@ proc do_test { displaced with_bp } {
gdb_test_no_output "set displaced-stepping $displaced"
- gdb_breakpoint [gdb_get_line_number "set wait-thread breakpoint here"]
+ set line [gdb_get_line_number "set wait-thread breakpoint here"]
+ if { ![gdb_breakpoint $line] } {
+ return
+ }
gdb_continue_to_breakpoint "run to wait-thread breakpoint"
gdb_test "info threads" "\\\* 1 .* 2 .*" "info threads shows all threads"
More information about the Gdb-patches
mailing list