From: Simon Marchi <simark@simark.ca>
To: Tom de Vries <tdevries@suse.de>,
Simon Marchi <simon.marchi@efficios.com>,
gdb-patches@sourceware.org
Subject: Re: [PATCH] gdb/testsuite: add xfail for gdb/29965 in gdb.threads/process-exit-status-is-leader-exit-status.exp
Date: Tue, 26 Sep 2023 14:22:04 -0400 [thread overview]
Message-ID: <48bb7a7a-f234-4c49-97f5-7d2e97c18dbc@simark.ca> (raw)
In-Reply-To: <12955268-777f-4fc0-b86f-c0ccd8a75522@suse.de>
On 9/26/23 12:55, Tom de Vries via Gdb-patches wrote:
> On 9/8/23 03:53, Simon Marchi via Gdb-patches wrote:
>> Bug 29965 shows on a Linux kernel >= 6.1, that test fails consistently
>> with:
>>
>> FAIL: gdb.threads/process-exit-status-is-leader-exit-status.exp: iteration=0: continue (the program exited)
>> ...
>> FAIL: gdb.threads/process-exit-status-is-leader-exit-status.exp: iteration=9: continue (the program exited)
>>
>> This is due to a change in Linux kernel behavior [1] that affects
>> exactly what this test tests. That is, if multiple threads (including
>> the leader) call SYS_exit, the exit status of the process should be the
>> exit status of the leader. After that change in the kernel, it is no
>> longer the case.
>>
>> Add an xfail in the test, based on the Linux kernel version. The goal
>> is that if a regression is introduced in GDB regarding this feature, it
>> should be caught if running on an older kernel where the behavior was
>> consistent.
>>
>
> Hi,
>
> thanks for doing this.
>
> I've rebooted into tumbleweed, applied the patch and confirmed that the xfail is triggered.
Thanks!
>
>> [1] https://bugzilla.suse.com/show_bug.cgi?id=1206926
>>
>> Bug: https://sourceware.org/bugzilla/show_bug.cgi?id=29965
>> Change-Id: If6ab7171c92bfc1a3b961c7179e26611773969eb
>> ---
>> ...cess-exit-status-is-leader-exit-status.exp | 21 ++++++++++++++++++-
>> 1 file changed, 20 insertions(+), 1 deletion(-)
>>
>> diff --git a/gdb/testsuite/gdb.threads/process-exit-status-is-leader-exit-status.exp b/gdb/testsuite/gdb.threads/process-exit-status-is-leader-exit-status.exp
>> index f64d6a73deaf..2bc73fdde07f 100644
>> --- a/gdb/testsuite/gdb.threads/process-exit-status-is-leader-exit-status.exp
>> +++ b/gdb/testsuite/gdb.threads/process-exit-status-is-leader-exit-status.exp
>> @@ -41,6 +41,25 @@ for {set iteration 0} {$iteration < 10} {incr iteration} {
>> return
>> }
>> - gdb_test "continue" "\\\[Inferior 1 \\(.*\\) exited with code 01\\\]"
>> + gdb_test_multiple "continue" "" {
>> + -re -wrap "\\\[Inferior 1 \\(.*\\) exited with code 01\\\]" {
>> + pass $gdb_test_name
>> + }
>> +
>> + -re -wrap "\\\[Inferior 1 \\(.*\\) exited with code $::decimal\\\]" {
>> + set lkv [linux_kernel_version]
>> +
>> + if { [llength $lkv] != 0 } {
>> + lassign $lkv major minor patch
>> +
>> + if { ($major == 6 && $minor >= 1) || $major > 6 } {
>
> You could consider using version_compare here, but it's no requirement.
>
> LGTM.
>
> Approved-By: Tom de Vries <tdevries@suse.de>
I didn't know about version_compare, I changed the code to use it and
pushed the patch, thanks!
Simon
prev parent reply other threads:[~2023-09-26 18:22 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-09-08 1:53 Simon Marchi
2023-09-19 13:56 ` Simon Marchi
2023-09-26 16:55 ` Tom de Vries
2023-09-26 18:22 ` Simon Marchi [this message]
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=48bb7a7a-f234-4c49-97f5-7d2e97c18dbc@simark.ca \
--to=simark@simark.ca \
--cc=gdb-patches@sourceware.org \
--cc=simon.marchi@efficios.com \
--cc=tdevries@suse.de \
/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;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).