public inbox for gcc-regression@sourceware.org
help / color / mirror / Atom feed
From: Maxim Kuvyrkov <maxim.kuvyrkov@linaro.org>
To: Carl Love <cel@us.ibm.com>
Cc: gcc-regression@gcc.gnu.org
Subject: Re: [TCWG CI] Regression caused by binutils: gdb: Powerpc mark xfail in gdb.base/catch-syscall.exp
Date: Thu, 23 Dec 2021 14:21:54 +0300	[thread overview]
Message-ID: <E7139462-D58D-42CB-8E63-E2BA09B68604@linaro.org> (raw)
In-Reply-To: <25103f22a93cbc1c3b6e40cd9ba919a3dbdfb3e3.camel@us.ibm.com>

Hi Carl,

This was a purely CI issue, nothing to do with your patch.

Regards,

--
Maxim Kuvyrkov
https://www.linaro.org

> On 22 Dec 2021, at 19:14, Carl Love <cel@us.ibm.com> wrote:
> 
> Maxim:
> 
> Thanks for the email.  I just wanted to double check with you if there
> is something that needs to be done. I have only had a chance to quickly
> look at the original email.  It sounds like my patch is OK, just an
> issue with the CI.  Note, I am traveling and only checking email
> occasionally.  Thanks for your help with this.
> 
>                        Carl 
> 
> On Tue, 2021-12-21 at 17:39 +0300, Maxim Kuvyrkov wrote:
>> Hi Carl,
>> 
>> This was sent out due to a bug in our CI.  Sorry for the noise.
>> 
>> Regards,
>> 
>> --
>> Maxim Kuvyrkov
>> https://www.linaro.org 
>> 
>>> On 17 Dec 2021, at 09:22, ci_notify@linaro.org wrote:
>>> 
>>> [TCWG CI] Regression caused by binutils: gdb: Powerpc mark xfail in
>>> gdb.base/catch-syscall.exp:
>>> commit 408db576c98b232de0b1a1ee3495bad0d1c704cf
>>> Author: Carl Love <cel@us.ibm.com>
>>> 
>>>   gdb: Powerpc mark xfail in gdb.base/catch-syscall.exp
>>> 
>>> Results regressed to
>>> # reset_artifacts:
>>> -10
>>> # build_abe binutils:
>>> -9
>>> # build_abe stage1 -- --set gcc_override_configure=--disable-
>>> libsanitizer --set gcc_override_configure=--disable-multilib --set
>>> gcc_override_configure=--with-cpu=cortex-m4 --set
>>> gcc_override_configure=--with-mode=thumb --set
>>> gcc_override_configure=--with-float=hard:
>>> -8
>>> # build_abe newlib:
>>> -6
>>> # build_abe stage2 -- --set gcc_override_configure=--disable-
>>> libsanitizer --set gcc_override_configure=--disable-multilib --set
>>> gcc_override_configure=--with-cpu=cortex-m4 --set
>>> gcc_override_configure=--with-mode=thumb --set
>>> gcc_override_configure=--with-float=hard:
>>> -5
>>> # benchmark -- -Os_LTO_mthumb artifacts/build-
>>> 408db576c98b232de0b1a1ee3495bad0d1c704cf/results_id:
>>> 1
>>> 
>>> from
>>> # reset_artifacts:
>>> -10
>>> # build_abe binutils:
>>> -9
>>> # build_abe stage1 -- --set gcc_override_configure=--disable-
>>> libsanitizer --set gcc_override_configure=--disable-multilib --set
>>> gcc_override_configure=--with-cpu=cortex-m4 --set
>>> gcc_override_configure=--with-mode=thumb --set
>>> gcc_override_configure=--with-float=hard:
>>> -8
>>> # build_abe newlib:
>>> -6
>>> # build_abe stage2 -- --set gcc_override_configure=--disable-
>>> libsanitizer --set gcc_override_configure=--disable-multilib --set
>>> gcc_override_configure=--with-cpu=cortex-m4 --set
>>> gcc_override_configure=--with-mode=thumb --set
>>> gcc_override_configure=--with-float=hard:
>>> -5
>>> # benchmark -- -Os_LTO_mthumb artifacts/build-baseline/results_id:
>>> 1
>>> 
>>> THIS IS THE END OF INTERESTING STUFF.  BELOW ARE LINKS TO BUILDS,
>>> REPRODUCTION INSTRUCTIONS, AND THE RAW COMMIT.
>>> 
>>> This commit has regressed these CI configurations:
>>> - tcwg_bmk_gnu_eabi_stm32/gnu_eabi-master-arm_eabi-coremark-Os_LTO
>>> 
>>> First_bad build: 
>>> https://ci.linaro.org/job/tcwg_bmk_ci_gnu_eabi-bisect-tcwg_bmk_stm32-gnu_eabi-master-arm_eabi-coremark-Os_LTO/10/artifact/artifacts/build-408db576c98b232de0b1a1ee3495bad0d1c704cf/
>>> 
>>> Last_good build: 
>>> https://ci.linaro.org/job/tcwg_bmk_ci_gnu_eabi-bisect-tcwg_bmk_stm32-gnu_eabi-master-arm_eabi-coremark-Os_LTO/10/artifact/artifacts/build-e6582e1b3c194b01a2461f5c5326fcf358303607/
>>> 
>>> Baseline build: 
>>> https://ci.linaro.org/job/tcwg_bmk_ci_gnu_eabi-bisect-tcwg_bmk_stm32-gnu_eabi-master-arm_eabi-coremark-Os_LTO/10/artifact/artifacts/build-baseline/
>>> 
>>> Even more details: 
>>> https://ci.linaro.org/job/tcwg_bmk_ci_gnu_eabi-bisect-tcwg_bmk_stm32-gnu_eabi-master-arm_eabi-coremark-Os_LTO/10/artifact/artifacts/
>>> 
>>> 
>>> Reproduce builds:
>>> <cut>
>>> mkdir investigate-binutils-408db576c98b232de0b1a1ee3495bad0d1c704cf
>>> cd investigate-binutils-408db576c98b232de0b1a1ee3495bad0d1c704cf
>>> 
>>> # Fetch scripts
>>> git clone 
>>> https://git.linaro.org/toolchain/jenkins-scripts
>>> 
>>> 
>>> # Fetch manifests and test.sh script
>>> mkdir -p artifacts/manifests
>>> curl -o artifacts/manifests/build-baseline.sh 
>>> https://ci.linaro.org/job/tcwg_bmk_ci_gnu_eabi-bisect-tcwg_bmk_stm32-gnu_eabi-master-arm_eabi-coremark-Os_LTO/10/artifact/artifacts/manifests/build-baseline.sh
>>>  --fail
>>> curl -o artifacts/manifests/build-parameters.sh 
>>> https://ci.linaro.org/job/tcwg_bmk_ci_gnu_eabi-bisect-tcwg_bmk_stm32-gnu_eabi-master-arm_eabi-coremark-Os_LTO/10/artifact/artifacts/manifests/build-parameters.sh
>>>  --fail
>>> curl -o artifacts/test.sh 
>>> https://ci.linaro.org/job/tcwg_bmk_ci_gnu_eabi-bisect-tcwg_bmk_stm32-gnu_eabi-master-arm_eabi-coremark-Os_LTO/10/artifact/artifacts/test.sh
>>>  --fail
>>> chmod +x artifacts/test.sh
>>> 
>>> # Reproduce the baseline build (build all pre-requisites)
>>> ./jenkins-scripts/tcwg_bmk-build.sh @@ artifacts/manifests/build-
>>> baseline.sh
>>> 
>>> # Save baseline build state (which is then restored in
>>> artifacts/test.sh)
>>> mkdir -p ./bisect
>>> rsync -a --del --delete-excluded --exclude /bisect/ --exclude
>>> /artifacts/ --exclude /binutils/ ./ ./bisect/baseline/
>>> 
>>> cd binutils
>>> 
>>> # Reproduce first_bad build
>>> git checkout --detach 408db576c98b232de0b1a1ee3495bad0d1c704cf
>>> ../artifacts/test.sh
>>> 
>>> # Reproduce last_good build
>>> git checkout --detach e6582e1b3c194b01a2461f5c5326fcf358303607
>>> ../artifacts/test.sh
>>> 
>>> cd ..
>>> </cut>
>>> 
>>> Full commit (up to 1000 lines):
>>> <cut>
>>> commit 408db576c98b232de0b1a1ee3495bad0d1c704cf
>>> Author: Carl Love <cel@us.ibm.com>
>>> Date:   Mon Nov 29 16:28:42 2021 +0000
>>> 
>>>   gdb: Powerpc mark xfail in gdb.base/catch-syscall.exp
>>> 
>>>   Powerpc is not reporting the
>>> 
>>>     Catchpoint 1 (returned from syscall execve),  ....
>>> 
>>>   as expected.  The issue appears to be with the kernel not
>>> returning the
>>>   expected result.  This patch marks the test failure as an xfail.
>>> 
>>>   Bug: 
>>> https://sourceware.org/bugzilla/show_bug.cgi?id=28623
>>> 
>>> ---
>>> gdb/testsuite/gdb.base/catch-syscall.exp | 37
>>> ++++++++++++++++++++++++++------
>>> 1 file changed, 31 insertions(+), 6 deletions(-)
>>> 
>>> diff --git a/gdb/testsuite/gdb.base/catch-syscall.exp
>>> b/gdb/testsuite/gdb.base/catch-syscall.exp
>>> index cdd5e2aec47..b0d524c1a03 100644
>>> --- a/gdb/testsuite/gdb.base/catch-syscall.exp
>>> +++ b/gdb/testsuite/gdb.base/catch-syscall.exp
>>> @@ -127,7 +127,28 @@ proc check_return_from_syscall { syscall {
>>> pattern "" } } {
>>>    }
>>> 
>>>    set thistest "syscall $syscall has returned"
>>> -    gdb_test "continue" "Catchpoint $decimal \\(returned from
>>> syscall ${pattern}\\).*" $thistest
>>> +    if { $pattern eq "execve" } {
>>> +	gdb_test_multiple "continue" $thistest {
>>> +	    -re -wrap "Catchpoint $decimal \\(returned from syscall
>>> ${pattern}\\).*" {
>>> +		pass $thistest
>>> +		return 1
>>> +	    }
>>> +	    -re -wrap ".*Breakpoint $decimal, main .*" {
>>> +		# On Powerpc the kernel does not report the returned
>>> from
>>> +		# syscall as expected by the test.  GDB bugzilla 28623.
>>> +		if { [istarget "powerpc64*-linux*"] } {
>>> +		    xfail $thistest
>>> +		} else {
>>> +		    fail $thistest
>>> +		}
>>> +		return 0
>>> +	    }
>>> +	}
>>> +
>>> +    } else {
>>> +	gdb_test "continue" "Catchpoint $decimal \\(returned from
>>> syscall ${pattern}\\).*" $thistest
>>> +	return 1
>>> +    }
>>> }
>>> 
>>> # Internal procedure that performs two 'continue' commands and
>>> checks if
>>> @@ -142,7 +163,7 @@ proc check_continue { syscall { pattern "" } }
>>> {
>>>    # Testing if the inferior has called the syscall.
>>>    check_call_to_syscall $syscall $pattern
>>>    # And now, that the syscall has returned.
>>> -    check_return_from_syscall $syscall $pattern
>>> +    return [check_return_from_syscall $syscall $pattern]
>>> }
>>> 
>>> # Inserts a syscall catchpoint with an argument.
>>> @@ -348,11 +369,15 @@ proc test_catch_syscall_execve {} {
>>> 	# Check for entry/return across the execve, making sure that
>>> the
>>> 	# syscall_state isn't lost when turning into a new process.
>>> 	insert_catch_syscall_with_arg "execve"
>>> -	check_continue "execve"
>>> +	if [check_continue "execve"] {
>>> +	    # The check_continue test generates an XFAIL on
>>> Powerpc.  In
>>> +	    # that case, gdb is already at main so don't do the
>>> continue.
>>> +
>>> 
>>> -	# Continue to main so extended-remote can read files as needed.
>>> -	# (Otherwise that "Reading" output confuses
>>> gdb_continue_to_end.)
>>> -	gdb_continue "main"
>>> +	    # Continue to main so extended-remote can read files as
>>> needed.
>>> +	    # (Otherwise that "Reading" output confuses
>>> gdb_continue_to_end.)
>>> +	    gdb_continue "main"
>>> +	}
>>> 
>>> 	# Now can we finish?
>>> 	check_for_program_end
>>> </cut>
> 



      reply	other threads:[~2021-12-23 11:21 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <485385377.5313.1639722152898@jenkins.jenkins>
2021-12-21 14:39 ` Maxim Kuvyrkov
2021-12-22 16:14   ` Carl Love
2021-12-23 11:21     ` Maxim Kuvyrkov [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=E7139462-D58D-42CB-8E63-E2BA09B68604@linaro.org \
    --to=maxim.kuvyrkov@linaro.org \
    --cc=cel@us.ibm.com \
    --cc=gcc-regression@gcc.gnu.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;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).