Hi, Bobby, Previous to that patch, enabled() (now tracing()) checked if the flag was globally enabled and if it had been individually enabled, and the tracing check was done elsewhere (DTRACE(flag) did that). Now tracing() is checking both conditions AND if tracing is on, which is likely a much more desirable design. As such, the tests must be updated to reflect this API change (e.g., replace ASSERT_TRUE(x.tracing()) with ASSERT_TRUE(!TRACING_ON || x.tracing()), or simply disable these tests altogether with a NDEBUG check). Regards,Daniel Em terça-feira, 11 de maio de 2021 16:48:35 BRT, Bobby Bruce <bbr...@ucdavis.edu> escreveu: Hey Daniel and Gabe, I'm looking into this test failure (reproducible with `scons build/NULL/unittests.fast`). I'm a little confused about how these tests ever passed. This patchet introduces the error (or at least, if this patch is reverted, the tests pass): https://gem5-review.googlesource.com/c/public/gem5/+/45008, but this doesn't appear to be doing anything bad. If compiling to `.fast` `tracing()` should return false (as far as I understand things), but the tests appear to assume this should return true, mostly so this branch is traversed: https://gem5.googlesource.com/public/gem5/+/refs/heads/develop/src/base/debug.cc#177. As things currently stand `TRACING_ON` is false and `_tracing` is true with `.fast`.
Does anyone have any insight? I feel like I might be overlooking something here. I realize things have been moved around in debug.hh recently but nothing seems particularly incorrect. Kind regards,Bobby --Dr. Bobby R. Bruce Room 3050, Kemper Hall, UC Davis Davis, CA, 95616 web: https://www.bobbybruce.net On Mon, May 10, 2021 at 11:43 PM jenkins-no-reply--- via gem5-dev <gem5-dev@gem5.org> wrote: See <https://jenkins.gem5.org/job/nightly/307/display/redirect?page=changes> Changes: [gabe.black] base: Add macros to mark things as deprecated. [gabe.black] base: Mark the unused DPRINTF_UNCONDITIONAL macro as deprecated. [gabe.black] base,arch,dev,mem: Always compile DPRINTFs, even if they're disabled. [gabe.black] base: Collapse the DTRACE macro in DPRINTF. [gabe.black] base: Simplify the definition of DTRACE. [Giacomo Travaglini] arch-arm: Fix SMM* instructions [gabe.black] base,python: Simplify how we check if a debug flag is enabled. [gabe.black] base: Move TRACING_ON check into Flag::tracing(). [gabe.black] misc: Collapse all uses of DTRACE(x) to Debug::x. [gabe.black] base,arch-sparc: Overhaul the small fenv wrapper in base. [gabe.black] arch-arm: Use src/base/fenv.hh instead of raw fenv.h. [gabe.black] cpu: Delete an unnecessary return in RegId::flatIndex. [gabe.black] arch,cpu: Get rid of is*Reg() methods in RegId. [gabe.black] cpu: Get rid of the unused NumRegClasses constant. [gabe.black] cpu: Get rid of the redundant PhysRegIndex type. [gabe.black] scons,misc: Remove the ability to disable some trivial features. [gabe.black] scons: Pull builder definitions out of SConstruct. [gabe.black] scons: Simplify finding the python lib with ParseConfig. [gabe.black] scons: Update comments in SConstruct. [gabe.black] python: Collapse away the now unused readCommandWithReturn function. [gabe.black] python,scons: Move readCommand and compareVersions into site_scons. [gabe.black] arch-x86: Clean up x86 integer indexes. [gabe.black] arch-x86: Create some infrastructure for x86 microop operands. [gabe.black] arch: Set %(op_idx)s properly when predicated operands are present. [gabe.black] arch-x86: Build source picking into the operands. ------------------------------------------ [...truncated 506.72 KB...] [==========] Running 8 tests from 1 test suite. [----------] Global test environment set-up. [----------] 8 tests from Coroutine [ RUN ] Coroutine.Unstarted [ OK ] Coroutine.Unstarted (0 ms) [ RUN ] Coroutine.Unfinished [ OK ] Coroutine.Unfinished (0 ms) [ RUN ] Coroutine.Passing [ OK ] Coroutine.Passing (1 ms) [ RUN ] Coroutine.Returning [ OK ] Coroutine.Returning (0 ms) [ RUN ] Coroutine.Fibonacci [ OK ] Coroutine.Fibonacci (0 ms) [ RUN ] Coroutine.Cooperative [ OK ] Coroutine.Cooperative (0 ms) [ RUN ] Coroutine.Nested [ OK ] Coroutine.Nested (0 ms) [ RUN ] Coroutine.TwoCallers [ OK ] Coroutine.TwoCallers (0 ms) [----------] 8 tests from Coroutine (1 ms total) [----------] Global test environment tear-down [==========] 8 tests from 1 test suite ran. (1 ms total) [ PASSED ] 8 tests. Running main() from build/googletest/googletest/src/gtest_main.cc [==========] Running 16 tests from 1 test suite. [----------] Global test environment set-up. [----------] 16 tests from FlagsTest [ RUN ] FlagsTest.ConstructorZero [ OK ] FlagsTest.ConstructorZero (0 ms) [ RUN ] FlagsTest.ConstructorSingle [ OK ] FlagsTest.ConstructorSingle (0 ms) [ RUN ] FlagsTest.ConstructorMulti [ OK ] FlagsTest.ConstructorMulti (0 ms) [ RUN ] FlagsTest.TypeAssignment [ OK ] FlagsTest.TypeAssignment (0 ms) [ RUN ] FlagsTest.TypeAssignmentOverwrite [ OK ] FlagsTest.TypeAssignmentOverwrite (0 ms) [ RUN ] FlagsTest.FlagsAssignment [ OK ] FlagsTest.FlagsAssignment (0 ms) [ RUN ] FlagsTest.FlagsAssignmentOverwrite [ OK ] FlagsTest.FlagsAssignmentOverwrite (0 ms) [ RUN ] FlagsTest.IsSetValue [ OK ] FlagsTest.IsSetValue (0 ms) [ RUN ] FlagsTest.IsSetType [ OK ] FlagsTest.IsSetType (0 ms) [ RUN ] FlagsTest.AllSetMatch [ OK ] FlagsTest.AllSetMatch (0 ms) [ RUN ] FlagsTest.NoneSetMatch [ OK ] FlagsTest.NoneSetMatch (0 ms) [ RUN ] FlagsTest.Clear [ OK ] FlagsTest.Clear (0 ms) [ RUN ] FlagsTest.ClearMatch [ OK ] FlagsTest.ClearMatch (0 ms) [ RUN ] FlagsTest.SetOverlapping [ OK ] FlagsTest.SetOverlapping (0 ms) [ RUN ] FlagsTest.ConditionalSet [ OK ] FlagsTest.ConditionalSet (0 ms) [ RUN ] FlagsTest.ReplaceOverlapping [ OK ] FlagsTest.ReplaceOverlapping (0 ms) [----------] 16 tests from FlagsTest (0 ms total) [----------] Global test environment tear-down [==========] 16 tests from 1 test suite ran. (0 ms total) [ PASSED ] 16 tests. [ CXX] NULL/base/loader/image_file_data.cc -> .fo [ CXX] NULL/base/logging.test.cc -> .fo [ CXX] NULL/base/logging.cc -> .fo [ CXX] NULL/base/hostinfo.cc -> .fo build/NULL/base/channel_addr.test.fast --gtest_output=xml:build/NULL/unittests.fast/base/channel_addr.test.xml Running main() from build/googletest/googletest/src/gtest_main.cc [==========] Running 2 tests from 1 test suite. [----------] Global test environment set-up. [----------] 2 tests from ChannelAddrRange [ RUN ] ChannelAddrRange.DefaultInvalid [ OK ] ChannelAddrRange.DefaultInvalid (0 ms) [ RUN ] ChannelAddrRange.Range [ OK ] ChannelAddrRange.Range (0 ms) [----------] 2 tests from ChannelAddrRange (0 ms total) [----------] Global test environment tear-down [==========] 2 tests from 1 test suite ran. (1 ms total) [ PASSED ] 2 tests. [ CXX] NULL/base/match.cc -> .fo build/NULL/base/intmath.test.fast --gtest_output=xml:build/NULL/unittests.fast/base/intmath.test.xml Running main() from build/googletest/googletest/src/gtest_main.cc [==========] Running 14 tests from 2 test suites. [----------] Global test environment set-up. [----------] 1 test from IntmathDeathTest [ RUN ] IntmathDeathTest.Log2iDeath [ SKIPPED ] IntmathDeathTest.Log2iDeath (0 ms) [----------] 1 test from IntmathDeathTest (0 ms total) [----------] 13 tests from IntmathTest [ RUN ] IntmathTest.isPowerOf2 [ OK ] IntmathTest.isPowerOf2 (0 ms) [ RUN ] IntmathTest.floorLog2 [ OK ] IntmathTest.floorLog2 (0 ms) [ RUN ] IntmathTest.ceilLog2 [ OK ] IntmathTest.ceilLog2 (0 ms) [ RUN ] IntmathTest.divCeil [ OK ] IntmathTest.divCeil (0 ms) [ RUN ] IntmathTest.mulUnsignedNarrow [ OK ] IntmathTest.mulUnsignedNarrow (0 ms) [ RUN ] IntmathTest.mulSignedNarrow [ OK ] IntmathTest.mulSignedNarrow (0 ms) [ RUN ] IntmathTest.mulUnsignedMid [ OK ] IntmathTest.mulUnsignedMid (0 ms) [ RUN ] IntmathTest.mulSignedMid [ OK ] IntmathTest.mulSignedMid (0 ms) [ RUN ] IntmathTest.mulUnsignedWide [ OK ] IntmathTest.mulUnsignedWide (0 ms) [ RUN ] IntmathTest.mulSignedWide [ OK ] IntmathTest.mulSignedWide (0 ms) [ RUN ] IntmathTest.roundUp [ OK ] IntmathTest.roundUp (0 ms) [ RUN ] IntmathTest.roundDown [ OK ] IntmathTest.roundDown (0 ms) [ RUN ] IntmathTest.Log2i [ OK ] IntmathTest.Log2i (0 ms) [----------] 13 tests from IntmathTest (0 ms total) [----------] Global test environment tear-down [==========] 14 tests from 2 test suites ran. (0 ms total) [ PASSED ] 13 tests. [ SKIPPED ] 1 test, listed below: [ SKIPPED ] IntmathDeathTest.Log2iDeath [ CXX] NULL/base/pixel.test.cc -> .fo [ LINK] -> NULL/base/inifile.test.fast.unstripped [ LINK] -> NULL/base/debug.test.fast.unstripped [ CXX] NULL/base/pixel.cc -> .fo [ LINK] -> NULL/base/refcnt.test.fast.unstripped build/NULL/base/inifile.test.fast --gtest_output=xml:build/NULL/unittests.fast/base/inifile.test.xml Running main() from build/googletest/googletest/src/gtest_main.cc [==========] Running 2 tests from 1 test suite. [----------] Global test environment set-up. [----------] 2 tests from Initest [ RUN ] Initest.MatchFound [ OK ] Initest.MatchFound (0 ms) [ RUN ] Initest.MatchNotFound [ OK ] Initest.MatchNotFound (0 ms) [----------] 2 tests from Initest (0 ms total) [----------] Global test environment tear-down [==========] 2 tests from 1 test suite ran. (0 ms total) [ PASSED ] 2 tests. [ LINK] -> NULL/base/bitunion.test.fast.unstripped [ STRIP] NULL/base/debug.test.fast.unstripped -> .fast [ CXX] NULL/base/sat_counter.test.cc -> .fo build/NULL/base/debug.test.fast --gtest_output=xml:build/NULL/unittests.fast/base/debug.test.xml Running main() from build/googletest/googletest/src/gtest_main.cc [==========] Running 12 tests from 4 test suites. [----------] Global test environment set-up. [----------] 1 test from DebugFlagDeathTest [ RUN ] DebugFlagDeathTest.UniqueNames build/NULL/base/debug.cc:97: panic: panic condition !result.second occurred: Flag FlagUniqueNamesTest already defined! [ OK ] DebugFlagDeathTest.UniqueNames (0 ms) [----------] 1 test from DebugFlagDeathTest (0 ms total) [----------] 8 tests from DebugFlagTest [ RUN ] DebugFlagTest.NameDesc [ OK ] DebugFlagTest.NameDesc (0 ms) [ RUN ] DebugFlagTest.IsFormat [ OK ] DebugFlagTest.IsFormat (0 ms) [ RUN ] DebugFlagTest.ConversionOperator [ OK ] DebugFlagTest.ConversionOperator (0 ms) [ RUN ] DebugFlagTest.FindFlag build/NULL/base/debug.test.cc:198: Failure Value of: flag_a.tracing() Actual: false Expected: true [ FAILED ] DebugFlagTest.FindFlag (0 ms) [ RUN ] DebugFlagTest.ChangeFlag build/NULL/base/debug.test.cc:219: Failure Value of: flag_a.tracing() Actual: false Expected: true [ FAILED ] DebugFlagTest.ChangeFlag (0 ms) [ RUN ] DebugFlagTest.SetClearDebugFlag build/NULL/base/debug.test.cc:244: Failure Value of: flag_a.tracing() Actual: false Expected: true [ FAILED ] DebugFlagTest.SetClearDebugFlag (0 ms) [ RUN ] DebugFlagTest.NoDumpDebugFlags [ OK ] DebugFlagTest.NoDumpDebugFlags (0 ms) [ RUN ] DebugFlagTest.DumpDebugFlags build/NULL/base/debug.test.cc:302: Failure Expected equality of these values: output Which is: "" "FlagDumpDebugFlagTestA\nFlagDumpDebugFlagTestC\n" "FlagDumpDebugFlagTestE\n" Which is: "FlagDumpDebugFlagTestA\nFlagDumpDebugFlagTestC\nFlagDumpDebugFlagTestE\n" With diff: @@ -1,1 +1,3 @@ -"" +FlagDumpDebugFlagTestA +FlagDumpDebugFlagTestC +FlagDumpDebugFlagTestE\n [ FAILED ] DebugFlagTest.DumpDebugFlags (1 ms) [----------] 8 tests from DebugFlagTest (1 ms total) [----------] 1 test from DebugSimpleFlagTest [ RUN ] DebugSimpleFlagTest.Enabled build/NULL/base/debug.test.cc:87: Failure Value of: flag.tracing() Actual: false Expected: true [ FAILED ] DebugSimpleFlagTest.Enabled (0 ms) [----------] 1 test from DebugSimpleFlagTest (0 ms total) [----------] 2 tests from DebugCompoundFlagTest [ RUN ] DebugCompoundFlagTest.Enabled build/NULL/base/debug.test.cc:122: Failure Value of: kid->tracing() Actual: false Expected: true [ FAILED ] DebugCompoundFlagTest.Enabled (0 ms) [ RUN ] DebugCompoundFlagTest.EnabledKids build/NULL/base/debug.test.cc:166: Failure Value of: flag_a.tracing() Actual: false Expected: true [ FAILED ] DebugCompoundFlagTest.EnabledKids (0 ms) [----------] 2 tests from DebugCompoundFlagTest (0 ms total) [----------] Global test environment tear-down [==========] 12 tests from 4 test suites ran. (1 ms total) [ PASSED ] 5 tests. [ FAILED ] 7 tests, listed below: [ FAILED ] DebugFlagTest.FindFlag [ FAILED ] DebugFlagTest.ChangeFlag [ FAILED ] DebugFlagTest.SetClearDebugFlag [ FAILED ] DebugFlagTest.DumpDebugFlags [ FAILED ] DebugSimpleFlagTest.Enabled [ FAILED ] DebugCompoundFlagTest.Enabled [ FAILED ] DebugCompoundFlagTest.EnabledKids 7 FAILED TESTS scons: *** [build/NULL/unittests.fast/base/debug.test.xml] Error 1 scons: building terminated because of errors. Build step 'Execute shell' marked build as failure Archiving artifacts Recording plot data Recording test results ERROR: Step ‘Publish JUnit test result report’ failed: Test reports were found but none of them are new. Did leafNodes run? For example, <https://jenkins.gem5.org/job/nightly/307/artifact/tests/testing-results/results.xml> is 22 hr old _______________________________________________ gem5-dev mailing list -- gem5-dev@gem5.org To unsubscribe send an email to gem5-dev-le...@gem5.org %(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s
_______________________________________________ gem5-dev mailing list -- gem5-dev@gem5.org To unsubscribe send an email to gem5-dev-le...@gem5.org %(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s