Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: Thiago Jung Bauermann <thiago.bauermann@linaro.org>
To: Guinevere Larsen <guinevere@redhat.com>
Cc: Ezra.Sitorus@arm.com,  gdb-patches@sourceware.org,
	luis.machado.foss@gmail.com
Subject: Re: [PATCH 0/4] gdb/aarch64: record/replay support for AArch64
Date: Fri, 24 Apr 2026 02:33:31 -0300	[thread overview]
Message-ID: <87zf2sc47o.fsf@linaro.org> (raw)
In-Reply-To: <36fe4cfe-f96d-4eda-9a6f-0bdd650b4b18@redhat.com> (Guinevere Larsen's message of "Thu, 23 Apr 2026 14:31:59 -0300")

Hello,

Guinevere Larsen <guinevere@redhat.com> writes:

> On 4/20/26 6:52 PM, Ezra.Sitorus@arm.com wrote:
>> From: Ezra Sitorus <ezra.sitorus@arm.com>
>>
>> This patch series enables record/replay for the following AArch64
>> features:
>> * FEAT_LRCPC3 (+rcpc3)
>> * FEAT_CSSC (+cssc)
>> * FEAT_RPRFM (+rprfm)
>> * FEAT_LSE128 (+lse128)

Great!

>> These were tested either with QEMU or Shrinkwrap. In both cases, I seem
>> to have test failures that are not related to my patches (gdb.threads,
>> gdb.mi tests for example). In these cases, is it fair to ignore these?
>> Or is there some underlying issue I've missed?
>
> gdb.threads tests are pretty often unreliable (we usually call them racy, as in, failing
> due to race conditions), and unfortunately some tests consistently fail on some
> configurations. My general recommendation while you're getting used to the tests is to run
> the testsuite before and after your changes, so you have a feel for what is likely to be a
> regression of yours or not.
>
> For reference, my system usually shows 4 failures, but can go up to 6 depending on what I
> do. If I run it with clang, I can expect between 50 and 70 failures.

Yes, a number of gdb.threads tests are flaky. With Linux's ptrace
syscall and the /proc/<pid>/tasks/<tid>/ interfaces that GDB has to work
with, it's hard to make GDB have a race-free accurate view of the
inferior threads. For a glimpse of some of the issues, see for example
bugs 26286¹ and 31832².

Regarding the flaky MI tests, I didn't dig much into them but at least
for some I think the problem is that they generate a lot of output which
can overflow Expect's buffer.

The Linaro CI keeps an "expected failures" file containing the baseline
failures and automatically detected flaky failures. For example:

http://54.172.246.49:9090/jobs/tcwg_gdb_check--master-aarch64-build/builds/10102/archive/artifacts/sumfiles/xfails.xfail

(We're currently doing some server migration so the URL above is likely
 to change at some point. CI notification emails will have the current
 one.)

You can use it with GCC's
contrib/testsuite-management/validate_failures.py script to filter the
noise:

$ validate_failures.py --manifest=xfails.xfail --results=gdb.sum > failures.txt

Note that strictly speaking, the baseline failures are specific of the
machine the CI jobs run on. If you want to be precise you can replace
the "known failures" section of the file with the failures from your
testsuite run of the patch's base commit.

>> In addition, whenever I used QEMU, I disabled gcs because it seems to
>> cause test failures - address/memory accesses seem to always cause a
>> fault. Am I doing something wrong?
>
> Unfortunately I can't help here, never tried running reverse tests on QEMU...

I see those failures too. When I worked on GCS support for GDB, QEMU
didn't have GCS support itself so I was never able to run the whole
testsuite with GCS enabled. It seems I chose too small a set of tests to
run on Shrinkwrap. I'll work on these regressions in the near future.

> I'll try to review your patches tomorrow, to get this moving :)

Thank you! I'm reviewing them too.

-- 
Thiago

¹ https://sourceware.org/bugzilla/show_bug.cgi?id=26286
² https://sourceware.org/bugzilla/show_bug.cgi?id=31832

  parent reply	other threads:[~2026-04-24  5:34 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-04-20 21:52 Ezra.Sitorus
2026-04-20 21:52 ` [PATCH 1/4] gdb/aarch64: record/replay support for LRCPC3 Ezra.Sitorus
2026-04-24  7:00   ` Luis
2026-04-24 15:09   ` Guinevere Larsen
2026-04-25  5:08   ` Thiago Jung Bauermann
2026-04-25  7:21   ` Thiago Jung Bauermann
2026-04-20 21:52 ` [PATCH 2/4] gdb/aarch64: Test record/replay support for CSSC Ezra.Sitorus
2026-04-24  7:07   ` Luis
2026-04-24 16:53   ` Guinevere Larsen
2026-04-25  6:10   ` Thiago Jung Bauermann
2026-04-25  7:28   ` Thiago Jung Bauermann
2026-04-20 21:52 ` [PATCH 3/4] gdb/aarch64: record/replay support for RPRFM and PRFM (reg) Ezra.Sitorus
2026-04-24  7:08   ` Luis
2026-04-24 16:56   ` Guinevere Larsen
2026-04-25  8:12   ` Thiago Jung Bauermann
2026-04-20 21:52 ` [PATCH 4/4] gdb/aarch64: record/replay support for LSE128 Ezra.Sitorus
2026-04-24  7:11   ` Luis
2026-04-24 17:12   ` Guinevere Larsen
2026-04-25  8:38   ` Thiago Jung Bauermann
2026-04-23 17:31 ` [PATCH 0/4] gdb/aarch64: record/replay support for AArch64 Guinevere Larsen
2026-04-23 22:20   ` Ezra Sitorus
2026-04-24  5:33   ` Thiago Jung Bauermann [this message]
2026-04-24  7:16 ` Luis

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=87zf2sc47o.fsf@linaro.org \
    --to=thiago.bauermann@linaro.org \
    --cc=Ezra.Sitorus@arm.com \
    --cc=gdb-patches@sourceware.org \
    --cc=guinevere@redhat.com \
    --cc=luis.machado.foss@gmail.com \
    /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