From: Tom de Vries <tdevries@suse.de>
To: Thiago Jung Bauermann <thiago.bauermann@linaro.org>,
gdb-patches@sourceware.org
Subject: Re: [PATCH] gdb.gdb/python-helper.exp: Increase timeout values
Date: Sun, 6 Sep 2026 17:58:06 +0200 [thread overview]
Message-ID: <a7a3f8d6-c6f0-4822-b8c2-c9bcce903cd9@suse.de> (raw)
In-Reply-To: <20260906040140.158197-1-thiago.bauermann@linaro.org>
On 9/6/26 6:01 AM, Thiago Jung Bauermann wrote:
> In the three Linux machines I tested (my x86_64 laptop and two aarch64
> servers), gdb.gdb/python-helper.exp has this timeout failure:
>
> FAIL: gdb.gdb/python-helper.exp: pretty print type instance flags (timeout)
>
> And the slower aarch64 server also has this one:
>
> FAIL: gdb.gdb/python-helper.exp: start inner gdb (timeout)
>
> Fix these failures by using timeout factors. For the latter, a 2x factor
> is enough. For the former, I needed 8x. It appears that the "pretty print
> type instance flags" test is quite demanding.
I tried to see if I could reproduce this. I ended up writing a patch (
https://sourceware.org/pipermail/gdb-patches/2026-September/230135.html
) for some timeout but I have no idea whether it's the same root cause
or not. You may want to test it.
Assuming it's not, LGTM.
Approved-By: Tom de Vries <tdevries@suse.de>
> ---
>
> I actually noticed these failures because I compared GDB 17.2 test
> results with GDB 18 ones. OK to also push to the branch?
>
This makes me wonder if we're dealing with a performance regression
here, but yeah, I suppose it's ok.
Thanks,
- Tom
> gdb/testsuite/gdb.gdb/python-helper.exp | 40 ++++++++++++++-----------
> 1 file changed, 22 insertions(+), 18 deletions(-)
>
> diff --git a/gdb/testsuite/gdb.gdb/python-helper.exp b/gdb/testsuite/gdb.gdb/python-helper.exp
> index d84e48166995..bcd94b2e6ae5 100644
> --- a/gdb/testsuite/gdb.gdb/python-helper.exp
> +++ b/gdb/testsuite/gdb.gdb/python-helper.exp
> @@ -91,19 +91,21 @@ proc test_python_helper {} {
> # little clearer when trying to unpick which GDB is active.
> gdb_test_no_output -prompt $outer_prompt_re "set prompt (outer-gdb) " "set outer gdb prompt"
>
> - # Send a command to the outer GDB to continue the inner GDB. The
> - # stop is being detected from the inner GDB, hence the use of -i
> - # here.
> - gdb_test_multiple "continue" "start inner gdb" {
> - -re "received signal SIGSEGV.* in GC_.*$outer_prompt_re" {
> - # Some versions of the GC used by Guile cause a SEGV
> - # during stack probing. Ignore this and carry on.
> - send_gdb "continue\n"
> - exp_continue
> - }
> - -i "$inferior_spawn_id"
> - -re "\r\n$gdb_prompt $" {
> - pass $gdb_test_name
> + with_timeout_factor 2 {
> + # Send a command to the outer GDB to continue the inner GDB. The
> + # stop is being detected from the inner GDB, hence the use of -i
> + # here.
> + gdb_test_multiple "continue" "start inner gdb" {
> + -re "received signal SIGSEGV.* in GC_.*$outer_prompt_re" {
> + # Some versions of the GC used by Guile cause a SEGV
> + # during stack probing. Ignore this and carry on.
> + send_gdb "continue\n"
> + exp_continue
> + }
> + -i "$inferior_spawn_id"
> + -re "\r\n$gdb_prompt $" {
> + pass $gdb_test_name
> + }
> }
> }
>
> @@ -172,11 +174,13 @@ proc test_python_helper {} {
> " int_stuff = \{ bit_size = $decimal, bit_offset = $decimal \}\}"]
> gdb_test -prompt $outer_prompt_re "print *val->m_type->main_type" $answer "pretty print type->main_type"
>
> - # Test printing instance flags using an artificial type.
> - set answer [string_to_regexp {instance_flags = [VOLATILE|DATA_SPACE|ADDRESS_CLASS(3)]}]
> - gdb_test -prompt $outer_prompt_re \
> - "print *make_type_with_harvard_address_space (make_cv_type (0, 1, make_type_with_address_class (val->m_type, 3)), 2)" \
> - "${answer}.*" "pretty print type instance flags"
> + with_timeout_factor 8 {
> + # Test printing instance flags using an artificial type.
> + set answer [string_to_regexp {instance_flags = [VOLATILE|DATA_SPACE|ADDRESS_CLASS(3)]}]
> + gdb_test -prompt $outer_prompt_re \
> + "print *make_type_with_harvard_address_space (make_cv_type (0, 1, make_type_with_address_class (val->m_type, 3)), 2)" \
> + "${answer}.*" "pretty print type instance flags"
> + }
>
> # Send the continue to the outer GDB, which resumes the inner GDB,
> # we then detect the prompt from the inner GDB, hence the use of
next prev parent reply other threads:[~2026-09-06 15:58 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-09-06 4:01 Thiago Jung Bauermann
2026-09-06 15:58 ` Tom de Vries [this message]
2026-09-06 20:13 ` Thiago Jung Bauermann
2026-09-07 1:02 ` Simon Marchi
2026-09-07 4:21 ` Thiago Jung Bauermann
2026-09-06 18:52 ` Simon Marchi
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=a7a3f8d6-c6f0-4822-b8c2-c9bcce903cd9@suse.de \
--to=tdevries@suse.de \
--cc=gdb-patches@sourceware.org \
--cc=thiago.bauermann@linaro.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