Re: [Linaro-TCWG-CI] 2 patches in gdb: FAIL: 5 regressions on aarch64
Hi! I just checked out this regression but I think there's something odd going on in the setup that is running the tests. When I run the test locally, the relevant part of the logs looks like this: (gdb) PASS: gdb.threads/threadcrash.exp: test_live_inferior: continue to breakpoint: running to breakpoint print $_inferior_thread_count^M $1 = 7^M (gdb) PASS: gdb.threads/threadcrash.exp: test_live_inferior: $thread_count == 7 thread apply all backtrace^M ^M < lots of GDB output > (gdb) PASS: gdb.threads/threadcrash.exp: test_live_inferior: Get thread information PASS: gdb.threads/threadcrash.exp: test_live_inferior: $unwind_fail == false PASS: gdb.threads/threadcrash.exp: test_live_inferior: $thread_count == [llength $test_list] Whereas the failed log reads like this: (gdb) PASS: gdb.threads/threadcrash.exp: test_live_inferior: continue to breakpoint: running to breakpoint print $_inferior_thread_count $1 = 7PASS: gdb.threads/threadcrash.exp: test_live_inferior: $thread_count == 7 (gdb) PASS: gdb.threads/threadcrash.exp: test_live_inferior: Get thread information PASS: gdb.threads/threadcrash.exp: test_live_inferior: $unwind_fail == false FAIL: gdb.threads/threadcrash.exp: test_live_inferior: $thread_count == [llength $test_list] thread apply all backtrace Notice how the gdb command to "apply all backtrace", which is used to create the test_list variable, happens after checking if the variable has been set correctly. I have no clue how things can get so out of sync... -- Cheers, Guinevere Larsen She/Her/Hers On 13/02/2024 17:09, ci_not...@linaro.org wrote: Dear contributor, our automatic CI has detected problems related to your patch(es). Please find some details below. If you have any questions, please follow up on linaro-toolchain@lists.linaro.org mailing list, Libera's #linaro-tcwg channel, or ping your favourite Linaro toolchain developer on the usual project channel. We appreciate that it might be difficult to find the necessary logs or reproduce the issue locally. If you can't get what you need from our CI within minutes, let us know and we will be happy to help. In gdb_check master-aarch64 after: | 2 patches in gdb | Patchwork URL: https://patchwork.sourceware.org/patch/85659 | f687941ee52 gdb/testsuite: reduce gdb.threads/threadcrash.exp reliance on libc symbols | 2e746d0ae56 gdb/testsuite: fix gdb.threads/threadcrash.exp on 32-bit arm targets | ... applied on top of baseline commit: | 7e4208a3f5d [gdb/tdep] Fix reverse execution of LDR(immediate) T4 FAIL: 5 regressions regressions.sum: === gdb tests === Running gdb:gdb.threads/threadcrash.exp ... FAIL: gdb.threads/threadcrash.exp: test_corefile: $thread_count == [llength $test_list] FAIL: gdb.threads/threadcrash.exp: test_corefile: getting thread count (got interactive prompt) FAIL: gdb.threads/threadcrash.exp: test_corefile: loading_corefile FAIL: gdb.threads/threadcrash.exp: test_gcore: $thread_count == [llength $test_list] FAIL: gdb.threads/threadcrash.exp: test_live_inferior: $thread_count == [llength $test_list] You can find the failure logs in *.log.1.xz files in - https://ci.linaro.org/job/tcwg_gdb_check--master-aarch64-precommit/1701/artifact/artifacts/artifacts.precommit/00-sumfiles/ The full lists of regressions and progressions as well as configure and make commands are in - https://ci.linaro.org/job/tcwg_gdb_check--master-aarch64-precommit/1701/artifact/artifacts/artifacts.precommit/notify/ The list of [ignored] baseline and flaky failures are in - https://ci.linaro.org/job/tcwg_gdb_check--master-aarch64-precommit/1701/artifact/artifacts/artifacts.precommit/sumfiles/xfails.xfail The configuration of this build is: CI config tcwg_gdb_check master-aarch64 -8<--8<--8<-- The information below can be used to reproduce a debug environment: Current build : https://ci.linaro.org/job/tcwg_gdb_check--master-aarch64-precommit/1701/artifact/artifacts Reference build : https://ci.linaro.org/job/tcwg_gdb_check--master-aarch64-build/814/artifact/artifacts ___ linaro-toolchain mailing list -- linaro-toolchain@lists.linaro.org To unsubscribe send an email to linaro-toolchain-le...@lists.linaro.org
Re: [Linaro-TCWG-CI] 2 patches in gdb: FAIL: 5 regressions on aarch64
Hello Guinevere, Guinevere Larsen writes: > I just checked out this regression but I think there's something odd going on > in the setup > that is running the tests. When I run the test locally, the relevant part of > the logs > looks like this: > > (gdb) PASS: gdb.threads/threadcrash.exp: test_live_inferior: continue to > breakpoint: > running to breakpoint > print $_inferior_thread_count^M > $1 = 7^M > (gdb) PASS: gdb.threads/threadcrash.exp: test_live_inferior: > $thread_count == 7 > thread apply all backtrace^M > ^M > < lots of GDB output > > (gdb) PASS: gdb.threads/threadcrash.exp: test_live_inferior: Get thread > information > PASS: gdb.threads/threadcrash.exp: test_live_inferior: $unwind_fail == > false > PASS: gdb.threads/threadcrash.exp: test_live_inferior: $thread_count == > [llength > $test_list] > > Whereas the failed log reads like this: > > (gdb) PASS: gdb.threads/threadcrash.exp: test_live_inferior: continue to > breakpoint: > running to breakpoint > print $_inferior_thread_count > $1 = 7PASS: gdb.threads/threadcrash.exp: test_live_inferior: > $thread_count == 7 > > (gdb) PASS: gdb.threads/threadcrash.exp: test_live_inferior: Get thread > information > PASS: gdb.threads/threadcrash.exp: test_live_inferior: $unwind_fail == > false > FAIL: gdb.threads/threadcrash.exp: test_live_inferior: $thread_count == > [llength > $test_list] > thread apply all backtrace > > Notice how the gdb command to "apply all backtrace", which is used to create > the test_list > variable, happens after checking if the variable has been set correctly. > > I have no clue how things can get so out of sync... It gets out of sync because the gdb_test_multiple pattern in test_thread_count doesn't include the GDB prompt, so that function can return before GDB prints the prompt. In this case, this pattern in thread_apply_all will immediately match and make it return before constructing $test_list: -re "$::gdb_prompt " { pass $gdb_test_name } That is why the "Get thread information" test passed right after the GDB prompt printed after the "$thread_count == 7" test. This patch makes the testcase work reliably for me, in a machine where I could often reproduce the failure from the CI: diff --git a/gdb/testsuite/gdb.threads/threadcrash.exp b/gdb/testsuite/gdb.threads/threadcrash.exp index 3905ad6f9362..944fbcac1b18 100644 --- a/gdb/testsuite/gdb.threads/threadcrash.exp +++ b/gdb/testsuite/gdb.threads/threadcrash.exp @@ -28,7 +28,7 @@ proc test_thread_count {} { set thread_count 0 gdb_test_multiple "print \$_inferior_thread_count" "getting thread count" { - -re ".* = (\[0-9]+).*" { + -re ".* = (\[0-9]+)\r\n$::gdb_prompt " { set thread_count $expect_out(1,string) gdb_assert {$thread_count == 7} } -- Thiago ___ linaro-toolchain mailing list -- linaro-toolchain@lists.linaro.org To unsubscribe send an email to linaro-toolchain-le...@lists.linaro.org
Re: [Linaro-TCWG-CI] 2 patches in gdb: FAIL: 5 regressions on aarch64
Hello again, Thiago Jung Bauermann writes: > diff --git a/gdb/testsuite/gdb.threads/threadcrash.exp > b/gdb/testsuite/gdb.threads/threadcrash.exp > index 3905ad6f9362..944fbcac1b18 100644 > --- a/gdb/testsuite/gdb.threads/threadcrash.exp > +++ b/gdb/testsuite/gdb.threads/threadcrash.exp > @@ -28,7 +28,7 @@ proc test_thread_count {} { > set thread_count 0 > > gdb_test_multiple "print \$_inferior_thread_count" "getting thread > count" { > - -re ".* = (\[0-9]+).*" { > + -re ".* = (\[0-9]+)\r\n$::gdb_prompt " { > set thread_count $expect_out(1,string) > gdb_assert {$thread_count == 7} > } It occurred to me that this gdb_test_multiple call is very similar to the function get_valueof in lib/gdb.exp, so one suggestion is to use that function instead. It uses "-re -wrap" so it expects the GDB prompt. -- Thiago ___ linaro-toolchain mailing list -- linaro-toolchain@lists.linaro.org To unsubscribe send an email to linaro-toolchain-le...@lists.linaro.org
RE: [Linaro-TCWG-CI] gcc patch #85687: FAIL: 3 regressions on arm
This does not make sense at all. The patch only touches aarch64 code and does NOT even touch arm code so there can't be any regressions with arm. Thanks, Andrew Pinski > -Original Message- > From: ci_not...@linaro.org > Sent: Tuesday, February 13, 2024 9:34 PM > To: Andrew Pinski (QUIC) > Subject: [Linaro-TCWG-CI] gcc patch #85687: FAIL: 3 regressions on arm > > Dear contributor, our automatic CI has detected problems related to your > patch(es). Please find some details below. If you have any questions, please > follow up on linaro-toolchain@lists.linaro.org mailing list, Libera's > #linaro-tcwg > channel, or ping your favourite Linaro toolchain developer on the usual > project > channel. > > We appreciate that it might be difficult to find the necessary logs or > reproduce > the issue locally. If you can't get what you need from our CI within minutes, > let > us know and we will be happy to help. > > In gcc_check master-arm after: > > | gcc patch https://patchwork.sourceware.org/patch/85687 > | Author: Andrew Pinski > | Date: Tue Feb 13 15:22:32 2024 -0800 > | > | aarch64: Reword error message for mismatch guard size and probing > interval [PR90155] > | > | The error message is not clear what options are being taked about > when it > says the values > | need to match; plus there is a wrong quotation dealing with the > diagnostic. > | So this changes the error message to be exactly talking about the > param > options that > | are being taked about and now with the options, it needs the quoting. > | > | ... 8 lines of the commit log omitted. > | ... applied on top of baseline commit: > | 5f2cd521347 libstdc++: C++ item p2442 is version 1 only > > FAIL: 3 regressions > > regressions.sum: > === g++ tests === > > Running g++:g++.dg/guality/guality.exp ... > FAIL: g++.dg/guality/pr55665.C -O2 -flto -fno-use-linker-plugin -flto- > partition=none line 23 p == 40 > > Running g++:g++.target/arm/arm.exp ... > XPASS: g++.target/arm/bfloat_cpp_typecheck.C (test for bogus messages, line > 10) > XPASS: g++.target/arm/bfloat_cpp_typecheck.C (test for bogus messages, line > 11) > > > You can find the failure logs in *.log.1.xz files in > - https://ci.linaro.org/job/tcwg_gcc_check--master-arm- > precommit/6107/artifact/artifacts/artifacts.precommit/00-sumfiles/ > The full lists of regressions and progressions as well as configure and make > commands are in > - https://ci.linaro.org/job/tcwg_gcc_check--master-arm- > precommit/6107/artifact/artifacts/artifacts.precommit/notify/ > The list of [ignored] baseline and flaky failures are in > - https://ci.linaro.org/job/tcwg_gcc_check--master-arm- > precommit/6107/artifact/artifacts/artifacts.precommit/sumfiles/xfails.xfail > > The configuration of this build is: > CI config tcwg_gcc_check master-arm > > -8<--8<--8< > -- > The information below can be used to reproduce a debug environment: > > Current build : https://ci.linaro.org/job/tcwg_gcc_check--master-arm- > precommit/6107/artifact/artifacts > Reference build : https://ci.linaro.org/job/tcwg_gcc_check--master-arm- > build/1714/artifact/artifacts ___ linaro-toolchain mailing list -- linaro-toolchain@lists.linaro.org To unsubscribe send an email to linaro-toolchain-le...@lists.linaro.org