public inbox for gdb-patches@sourceware.org
 help / color / mirror / Atom feed
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

      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).