From: Tom de Vries <tdevries@suse.de>
To: gdb-patches@sourceware.org
Subject: [committed][gdb/testsuite] Make gdb.mi/mi-sym-info.exp more robust against timeouts
Date: Fri, 30 Apr 2021 11:27:44 +0200 [thread overview]
Message-ID: <20210430092743.GA24286@delia.home> (raw)
Hi,
Once in a while, I run into this timeout:
...
FAIL: gdb.mi/mi-sym-info.exp: List all variables from debug information \
only (timeout)
...
I can make the timeout reproducible by setting timeout to 8s (instead of the
default 10s) for the duration of that test.
Make the test-case more stable by fixing all timeouts caused by setting
timeout to 5, either by adding with_timeout_factor, or increasing its factor.
Tested on x86_64-linux. Also tested in parallel with stress -c 5, to simulate
a busy system in another way.
Committed to trunk.
Thanks,
- Tom
[gdb/testsuite] Make gdb.mi/mi-sym-info.exp more robust against timeouts
gdb/testsuite/ChangeLog:
2021-04-30 Tom de Vries <tdevries@suse.de>
* gdb.mi/mi-sym-info.exp: Add with_timeout_factor, and increase
existing timeout factors.
---
gdb/testsuite/gdb.mi/mi-sym-info.exp | 70 +++++++++++++++++++-----------------
1 file changed, 37 insertions(+), 33 deletions(-)
diff --git a/gdb/testsuite/gdb.mi/mi-sym-info.exp b/gdb/testsuite/gdb.mi/mi-sym-info.exp
index f7f574aaeae..18f85182a7b 100644
--- a/gdb/testsuite/gdb.mi/mi-sym-info.exp
+++ b/gdb/testsuite/gdb.mi/mi-sym-info.exp
@@ -55,42 +55,46 @@ set type_syms \
# Fetch all functions, variables and types without any non-debug
# symbols.
-set testname "List all functions from debug information only"
-set cmd "111-symbol-info-functions"
-set state 0
-gdb_test_multiple $cmd $testname -prompt "${mi_gdb_prompt}$" {
- -re "111\\^done,symbols=\{debug=\\\[${symtab_re}" {
- if { $state == 0 } { incr state }
- exp_continue
- }
- -re ",${symtab_re}" {
- exp_continue
- }
- -re "\\\]\}\r\n${mi_gdb_prompt}$" {
- if { $state == 1 } {
- pass $gdb_test_name
- } else {
- fail $gdb_test_name
+with_timeout_factor 2 {
+ set testname "List all functions from debug information only"
+ set cmd "111-symbol-info-functions"
+ set state 0
+ gdb_test_multiple $cmd $testname -prompt "${mi_gdb_prompt}$" {
+ -re "111\\^done,symbols=\{debug=\\\[${symtab_re}" {
+ if { $state == 0 } { incr state }
+ exp_continue
+ }
+ -re ",${symtab_re}" {
+ exp_continue
+ }
+ -re "\\\]\}\r\n${mi_gdb_prompt}$" {
+ if { $state == 1 } {
+ pass $gdb_test_name
+ } else {
+ fail $gdb_test_name
+ }
}
}
}
-set testname "List all variables from debug information only"
-set cmd "112-symbol-info-variables"
-set state 0
-gdb_test_multiple $cmd $testname -prompt "${mi_gdb_prompt}$" {
- -re "112\\^done,symbols=\{debug=\\\[${symtab_re}" {
- if { $state == 0 } { incr state }
- exp_continue
- }
- -re ",${symtab_re}" {
- exp_continue
- }
- -re "\\\]\}\r\n${mi_gdb_prompt}$" {
- if { $state == 1 } {
- pass $gdb_test_name
- } else {
- fail $gdb_test_name
+with_timeout_factor 2 {
+ set testname "List all variables from debug information only"
+ set cmd "112-symbol-info-variables"
+ set state 0
+ gdb_test_multiple $cmd $testname -prompt "${mi_gdb_prompt}$" {
+ -re "112\\^done,symbols=\{debug=\\\[${symtab_re}" {
+ if { $state == 0 } { incr state }
+ exp_continue
+ }
+ -re ",${symtab_re}" {
+ exp_continue
+ }
+ -re "\\\]\}\r\n${mi_gdb_prompt}$" {
+ if { $state == 1 } {
+ pass $gdb_test_name
+ } else {
+ fail $gdb_test_name
+ }
}
}
}
@@ -150,7 +154,7 @@ gdb_test_multiple $cmd ${testname} -prompt "${mi_gdb_prompt}$" {
}
}
-with_timeout_factor 2 {
+with_timeout_factor 4 {
set testname "List all variables"
set cmd "115-symbol-info-variables --include-nondebug"
set state 0
next reply other threads:[~2021-04-30 9:27 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-04-30 9:27 Tom de Vries [this message]
2021-04-30 12:55 ` Luis Machado via Gdb-patches
2021-04-30 13:05 ` tdevries
2021-04-30 13:06 ` Simon Marchi via Gdb-patches
2021-04-30 13:20 ` Luis Machado via Gdb-patches
2021-04-30 13:28 ` Simon Marchi via Gdb-patches
2021-04-30 13:34 ` Luis Machado via Gdb-patches
2021-04-30 13:41 ` Simon Marchi via Gdb-patches
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20210430092743.GA24286@delia.home \
--to=tdevries@suse.de \
--cc=gdb-patches@sourceware.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox