[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [XEN PATCH v3] automation/eclair: add new analysis jobs with differing configurations


  • To: Stefano Stabellini <sstabellini@xxxxxxxxxx>
  • From: Nicola Vetrini <nicola.vetrini@xxxxxxxxxxx>
  • Date: Sat, 01 Nov 2025 07:37:56 +0100
  • Arc-authentication-results: i=1; bugseng.com; arc=none smtp.remote-ip=162.55.131.47
  • Arc-message-signature: i=1; d=bugseng.com; s=openarc; a=rsa-sha256; c=relaxed/relaxed; t=1761979076; h=DKIM-Signature:MIME-Version:Date:From:To:Cc:Subject:In-Reply-To: References:Message-ID:X-Sender:Organization:Content-Type: Content-Transfer-Encoding; bh=Dzfz4lp5jGZyHnaFvwGlIWDOyeYcfV/ytR+E+baJEq8=; b=aoVv9laG0qFXkMeHg3kPa4zSXdWfEPrzqViiNnhGJv1ax/DY+WT3NX9/iN1w7wxjAOxt ki0uEzrXlztQ1TEvlfgQoyx8zwi79Y2weUxccCU0DfHUB325O/F00kO0NEtYa2u2EdCk9 xUgjvxu8B///QMuyBmAdc/4gMOgNwDF1rczZ+4BvdJbK1WrsqDI2nsjp5oXypxFK0hY0d ZhzrlxQ7fRhDhVy810JTq8/tKo1kNktXi2NrNn71OpGLatsI9pIfq5Tn4yrFPfow0uqx7 zT5ThDWmmHAHIpcyfc99UUViQ8pCjRIhSjunRVuKDMCuKIp1OgS3P2Ap0aM8wA2x9CTYg VmqlJUyQkzk8liiXhjkTX41DTjkJA34tPlsV8vmAKG0vCEhcsZHaMPlJNh7P4K/wEs0w6 6Yq9AQ0UP/uczZj/nwn8mAOqfRlPORyOaapGZrKDeGByo0pePZ5hNFow8RpI3DOj9p6oG RA6+lNibCCr22MTa4v5KjQuayVR7WhaHDOoNnnIlmu0gXkQsnx4ptU4EKU+xqYDloxDoy NkruGA77JPksD4rrpKcvvn0ccdoODoW6hi3kQJq0y0MTEIMOJMpGgDOPvOcTYS2AeoMp0 JdkiWsXnIV+O3JoaPj6FFQrzWWtxCVHoUrMcFcrwLgOgerxyYIlIn/S7tSANr/c=
  • Arc-seal: i=1; d=bugseng.com; s=openarc; a=rsa-sha256; cv=none; t=1761979076; b=PTyPmulIHclyO2Qkz15+Mb9lzqKlMS58ABhxjgDQuYQIIGm0BZuAhnV0ri0wDGGnvHIc dmB3gcMQnNne0D2MtfCMId4Yz0OpF82YXZyxjDL2Zd4MZsyhE0rEi/L2VBoaBGTjOkYad pXg8eGlQaOGxyutTruwH8bGvR8MeyqC5g85I1c8oryaBRO+zUopsuqhjouX1Mvs5FDLfY MbH3SbKmUi8JDwoiOK6/BEAUJnVSh3UEMc4o2JwrJeIzwFtSOPt87oWF+7yfIxpkdkdsU 7WbaDNRj8HpHQVY1vpAUnULz9/A5qtRcfhyPnFKY4LYhDoVk77hzkH7w/ti7vsNW7+fOd 5M/EDqd5D445PR4bJV18ADaIAr/kK08T5Sdf1svDpUs8PGQjOS5wRTeDjZzquxlAq/Zeh cmqL7dAYBZaXjPZCHuGYdMVuh+Wis35c4hukk3/LVo9qdXKl1gwVS83HeHiEW/D+ostKw ixXxmQiugmyc+XHOpn3AxjE56UlhaNYbCliOUO96UuSFymXfO5ZPwVmDO41LZDgvVtA3t HgpgTWVL6kRTcFEOtjXmLa5nom6SI5G0qhBJjAtPdsBp9aUlSGV1xeNMBFBVopAlGeDmQ lSgpLABVJPJNTdifw7n5c3ZoHiKGqpJ7Hd397QrLvoN3k+z/i96dQtCtrdxck9E=
  • Authentication-results: bugseng.com; arc=none smtp.remote-ip=162.55.131.47
  • Cc: xen-devel@xxxxxxxxxxxxxxxxxxxx, consulting@xxxxxxxxxxx, Doug Goldstein <cardoe@xxxxxxxxxx>
  • Delivery-date: Sat, 01 Nov 2025 06:38:20 +0000
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>

On 2025-10-31 20:55, Stefano Stabellini wrote:
On Fri, 31 Oct 2025, Nicola Vetrini wrote:
The following analysis jobs are performed:
- eclair-{x86_64,ARM64}: analyze Xen using the default configuration for
  that architecture; runs on runners tagged `eclair-analysis'.

- eclair-{x86-64,ARM64}-safety: analyze Xen using the configuration for
  safety, which is more restricted; runs on runners tagged
  `eclair-analysis-safety`.

- eclair-{x86_64,ARM64}-testing: analyze Xen using the default
configuration for the purposes of testing new runner updates; runs on
  runners tagged `eclair-analysis-testing`.

Signed-off-by: Nicola Vetrini <nicola.vetrini@xxxxxxxxxxx>
---
CI pipeline: https://gitlab.com/xen-project/people/bugseng/xen/-/pipelines/2130873833

Note: the eclair-ARM64 and eclair-x86_64 jobs are allowed to fail because the
configuration is not (yet) clean for all checked MISRA guidelines.

Changes in v3:
- Use a variable instead of testing the repository PATH to decide whether a job
  should be run for *-testing and *-safety analyses;
- Allow eclair-{x86_64,ARM64} default configurations to fail, as the configuration
  is not yet clean for MISRA.
Changes in v2:
- rebased to current staging;
- fixed regex path issue.
---
automation/gitlab-ci/analyze.yaml | 42 ++++++++++++++++++++++++++++++-
 1 file changed, 41 insertions(+), 1 deletion(-)

diff --git a/automation/gitlab-ci/analyze.yaml b/automation/gitlab-ci/analyze.yaml
index d50721006740..fae55a23dbb5 100644
--- a/automation/gitlab-ci/analyze.yaml
+++ b/automation/gitlab-ci/analyze.yaml
@@ -45,6 +45,22 @@ eclair-x86_64:
     LOGFILE: "eclair-x86_64.log"
     VARIANT: "X86_64"
     RULESET: "monitored"
+  allow_failure: true

Wouldn't "allow_failure: true" also change the behavior for the existing jobs? I would think we want to continue not allowing failures for those.
I would think that at least eclair-x86_64-safety should not allow
failures (like before this patch).


Well spotted, for some reason I thought that it would be overwritten by the rules section in the extended job. I will put an explicit allow_failure: false in *-safety job to preserve their behavior, then when (if?) the eclair-{arm64,x86_64} jobs are also clean, we can remove both settings


+eclair-x86_64-testing:
+  extends: eclair-x86_64
+  tags:
+    - eclair-analysis-testing
+  rules:
+    - if: $ECLAIR_TESTING
+      when: always
+    - !reference [.eclair-analysis:triggered, rules]

I imagine that ECLAIR_TESTING will be typically off in
gitlab.com/xen-project/hardware/xen, right?


It's not about the repo, but the runner environment. The runner(s) tagged with eclair-analysis-testing do have ECLAIR_TESTING set, while the ones tagged with eclair-analysis-safety and/or eclair-analysis have the ECLAIR_SAFETY variable defined.


+eclair-x86_64-safety:
+  extends: eclair-x86_64
+  tags:
+    - eclair-analysis-safety
+  variables:
     EXTRA_XEN_CONFIG: |
       CONFIG_AMD=y
       CONFIG_INTEL=n
@@ -75,6 +91,10 @@ eclair-x86_64:
       CONFIG_DEBUG_LOCKS=n
       CONFIG_SCRUB_DEBUG=n
       CONFIG_XMEM_POOL_POISON=n
+  rules:
+    - if: $ECLAIR_SAFETY && $CI_COMMIT_BRANCH =~ /^staging$/
+      when: always

On the other hand, I expect that ECLAIR_SAFETY will be on in
gitlab.com/xen-project/hardware/xen, right?

I don't think we need the extra check on "staging" as the branch
on gitlab.com/xen-project/hardware/xen are very limited.


Ok, can edit that out


+    - !reference [.eclair-analysis:triggered, rules]

 eclair-ARM64:
   extends: .eclair-analysis:triggered
@@ -82,6 +102,22 @@ eclair-ARM64:
     LOGFILE: "eclair-ARM64.log"
     VARIANT: "ARM64"
     RULESET: "monitored"
+  allow_failure: true

Same comment for ARM


+eclair-ARM64-testing:
+  extends: eclair-ARM64
+  tags:
+    - eclair-analysis-testing
+  rules:
+    - if: $ECLAIR_TESTING
+      when: always
+    - !reference [.eclair-analysis:triggered, rules]
+
+eclair-ARM64-safety:
+  extends: eclair-ARM64
+  tags:
+    - eclair-analysis-safety
+  variables:
     EXTRA_XEN_CONFIG: |
       CONFIG_NR_CPUS=16
       CONFIG_GICV2=n
@@ -120,13 +156,17 @@ eclair-ARM64:
       CONFIG_DEBUG_LOCKS=n
       CONFIG_SCRUB_DEBUG=n
       CONFIG_XMEM_POOL_POISON=n
+  rules:
+    - if: $ECLAIR_SAFETY && $CI_COMMIT_BRANCH =~ /^staging$/
+      when: always
+    - !reference [.eclair-analysis, rules]

 .eclair-analysis:on-schedule:
   extends: .eclair-analysis
   rules:
     - if: $CI_PIPELINE_SOURCE != "schedule"
       when: never
-    - !reference [.eclair-analysis, rules]
+    - !reference [.eclair-analysis:triggered, rules]

 eclair-x86_64:on-schedule:
   extends: .eclair-analysis:on-schedule
--
2.43.0


--
Nicola Vetrini, B.Sc.
Software Engineer
BUGSENG (https://bugseng.com)
LinkedIn: https://www.linkedin.com/in/nicola-vetrini-a42471253



 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.