Notice: We have migrated to GitLab launching 2024-05-01 see here: https://gitlab.rtems.org/

#2867 closed defect (fixed)

Fix exclude rule in rtems-test-check

Reported by: Stavros Passas Owned by: Chris Johns
Priority: low Milestone: 5.1
Component: tool Version: 5
Severity: minor Keywords:
Cc: Blocked By:
Blocking:

Description

rtems-test-check is responsible of checking the testsuite configuration of a given BSP and adapt it based on a given "command". Currently for the "exclude" command, we never exclude anything, the output of the script is always the whole list of the input tests.

This happens because the script always starts with output = $tests and appends on the list the tests that are not excluded, so the output is always all the tests.

Attachments (1)

fix-2867.patch (708 bytes) - added by Stavros Passas on 01/16/17 at 15:44:43.
proposed fix

Download all attachments as: .zip

Change History (10)

Changed on 01/16/17 at 15:44:43 by Stavros Passas

Attachment: fix-2867.patch added

proposed fix

comment:1 Changed on 01/16/17 at 15:48:37 by Stavros Passas

I attached a simple fix that would solve the described issue. The issue is created because we want to provide a full list of tests in case the exclude file from the BSP is non-existing, thus a simple fix would be to start with an empty list if the BSP file exists, or with a full list there is nothing to exclude.

comment:2 Changed on 01/16/17 at 17:08:47 by Joel Sherrill

Thanks. I had reported that a LOT of BSPs failed to complete building all tests but hadn't tracked it down completely. I am testing this patch. Does it look OK?

index e02f8e9..218d1f0 100755
--- a/tools/build/rtems-test-check
+++ b/tools/build/rtems-test-check
[joel@rtbf64c rtems]$ git diff tools/
diff --git a/tools/build/rtems-test-check b/tools/build/rtems-test-check
index e02f8e9..218d1f0 100755
--- a/tools/build/rtems-test-check
+++ b/tools/build/rtems-test-check
@@ -32,7 +32,7 @@ done

case ${mode} in

exclude)

  • output=${tests}

+ output=

;;

flags)

if [ $test_count != 1 ]; then

comment:3 Changed on 01/16/17 at 17:21:06 by Stavros Passas

Hi Joel, no this will not work, because for the BSPs that do not have an exclude testsuite list, the output will be returned immediately as ${output} (that will be ""), and the BSP will not compile any test!

Last edited on 01/16/17 at 17:23:49 by Stavros Passas (previous) (diff)

comment:4 Changed on 01/16/17 at 18:23:31 by Joel Sherrill

Unfortunately, it looks like this script has grown complicated enough where some test cases are needed that are independent of the BSPs and testsuite.

I will try to look at it some more but am assigning this to Chris since he wrote the script.

comment:5 Changed on 01/16/17 at 18:23:55 by Joel Sherrill

Owner: set to Chris Johns
Status: newassigned

comment:6 Changed on 01/16/17 at 19:25:48 by Joel Sherrill

I posted a patch to devel which works for gensh1 (has .tcfg file with excludes) and pc686 which doesn't have a .tcfg file. I will build all BSPs before I consider pushing this.

Feedback appreciated.

comment:7 Changed on 01/18/17 at 00:06:34 by Joel Sherrill

Resolution: fixed
Status: assignedclosed

I have built all BSPs with your patch and my additions to some .tcfg files.

The only BSPs with build issues are those which are gcc < 5.0 due to using restrict and not restrict in devctl.h. This is fixed in newlib and the next newlib snapshot and tool bump will fix those.

Reopen if you think this isn't OK.

comment:8 Changed on 05/11/17 at 07:31:02 by Sebastian Huber

Milestone: 4.124.12.0

comment:9 Changed on 11/09/17 at 06:27:14 by Sebastian Huber

Milestone: 4.12.05.1

Milestone renamed

Note: See TracTickets for help on using tickets.