[PATCH 3/5] CI: Update riscv64 to use Debian Trixie

Andrew Cooper posted 5 patches 2 months, 3 weeks ago
There is a newer version of this series
[PATCH 3/5] CI: Update riscv64 to use Debian Trixie
Posted by Andrew Cooper 2 months, 3 weeks ago
Everything works fine with Debian 13.  Provide two new build jobs, and update
both the randconfig the test jobs.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
---
CC: Anthony PERARD <anthony.perard@vates.tech>
CC: Michal Orzel <michal.orzel@amd.com>
CC: Jan Beulich <jbeulich@suse.com>
CC: Julien Grall <julien@xen.org>
CC: Roger Pau Monné <roger.pau@citrix.com>
CC: Stefano Stabellini <sstabellini@kernel.org>
CC: Shawn Anastasio <sanastasio@raptorengineering.com>
CC: Oleksii Kurochko <oleksii.kurochko@gmail.com>
CC: Doug Goldstein <cardoe@cardoe.com>
CC: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
CC: Victor Lira <victorm.lira@amd.com>

https://gitlab.com/xen-project/hardware/xen-staging/-/pipelines/1975929387
---
 automation/gitlab-ci/build.yaml | 22 ++++++++++++++++++----
 automation/gitlab-ci/test.yaml  |  2 +-
 2 files changed, 19 insertions(+), 5 deletions(-)

diff --git a/automation/gitlab-ci/build.yaml b/automation/gitlab-ci/build.yaml
index 3fe539dc5683..f8e45f3467c8 100644
--- a/automation/gitlab-ci/build.yaml
+++ b/automation/gitlab-ci/build.yaml
@@ -329,10 +329,10 @@ debian-13-ppc64le-gcc-debug:
       CONFIG_UBSAN=y
       CONFIG_UBSAN_FATAL=y
 
-debian-12-riscv64-gcc-debug:
+debian-13-riscv64-gcc-debug:
   extends: .gcc-riscv64-cross-build-debug
   variables:
-    CONTAINER: debian:12-riscv64
+    CONTAINER: debian:13-riscv64
     KBUILD_DEFCONFIG: tiny64_defconfig
     HYPERVISOR_ONLY: y
     EXTRA_XEN_CONFIG: |
@@ -727,6 +727,20 @@ debian-12-riscv64-gcc:
     KBUILD_DEFCONFIG: tiny64_defconfig
     HYPERVISOR_ONLY: y
 
+debian-12-riscv64-gcc-debug:
+  extends: .gcc-riscv64-cross-build-debug
+  variables:
+    CONTAINER: debian:12-riscv64
+    KBUILD_DEFCONFIG: tiny64_defconfig
+    HYPERVISOR_ONLY: y
+
+debian-13-riscv64-gcc:
+  extends: .gcc-riscv64-cross-build
+  variables:
+    CONTAINER: debian:13-riscv64
+    KBUILD_DEFCONFIG: tiny64_defconfig
+    HYPERVISOR_ONLY: y
+
 .riscv-fixed-randconfig:
   variables: &riscv-fixed-randconfig
     EXTRA_FIXED_RANDCONFIG: |
@@ -739,10 +753,10 @@ debian-12-riscv64-gcc:
       CONFIG_VM_EVENT=n
       CONFIG_XSM=n
 
-debian-12-riscv64-gcc-randconfig:
+debian-13-riscv64-gcc-randconfig:
   extends: .gcc-riscv64-cross-build
   variables:
-    CONTAINER: debian:12-riscv64
+    CONTAINER: debian:13-riscv64
     KBUILD_DEFCONFIG: tiny64_defconfig
     RANDCONFIG: y
     <<: *riscv-fixed-randconfig
diff --git a/automation/gitlab-ci/test.yaml b/automation/gitlab-ci/test.yaml
index 2f6f3affa637..9acd984d294c 100644
--- a/automation/gitlab-ci/test.yaml
+++ b/automation/gitlab-ci/test.yaml
@@ -705,7 +705,7 @@ qemu-smoke-riscv64-gcc:
   script:
     - ./automation/scripts/qemu-smoke-riscv64.sh 2>&1 | tee ${LOGFILE}
   needs:
-    - debian-12-riscv64-gcc-debug
+    - debian-13-riscv64-gcc-debug
 
 qemu-smoke-ppc64le-powernv9-gcc:
   extends: .qemu-ppc64le
-- 
2.39.5


Re: [PATCH 3/5] CI: Update riscv64 to use Debian Trixie
Posted by Oleksii Kurochko 2 months, 2 weeks ago
On 8/10/25 12:12 AM, Andrew Cooper wrote:
> Everything works fine with Debian 13.  Provide two new build jobs, and update
> both the randconfig the test jobs.
>
> Signed-off-by: Andrew Cooper<andrew.cooper3@citrix.com>
> ---
> CC: Anthony PERARD<anthony.perard@vates.tech>
> CC: Michal Orzel<michal.orzel@amd.com>
> CC: Jan Beulich<jbeulich@suse.com>
> CC: Julien Grall<julien@xen.org>
> CC: Roger Pau Monné<roger.pau@citrix.com>
> CC: Stefano Stabellini<sstabellini@kernel.org>
> CC: Shawn Anastasio<sanastasio@raptorengineering.com>
> CC: Oleksii Kurochko<oleksii.kurochko@gmail.com>
> CC: Doug Goldstein<cardoe@cardoe.com>
> CC: Marek Marczykowski-Górecki<marmarek@invisiblethingslab.com>
> CC: Victor Lira<victorm.lira@amd.com>
>
> https://gitlab.com/xen-project/hardware/xen-staging/-/pipelines/1975929387
> ---
>   automation/gitlab-ci/build.yaml | 22 ++++++++++++++++++----
>   automation/gitlab-ci/test.yaml  |  2 +-
>   2 files changed, 19 insertions(+), 5 deletions(-)
>
> diff --git a/automation/gitlab-ci/build.yaml b/automation/gitlab-ci/build.yaml
> index 3fe539dc5683..f8e45f3467c8 100644
> --- a/automation/gitlab-ci/build.yaml
> +++ b/automation/gitlab-ci/build.yaml
> @@ -329,10 +329,10 @@ debian-13-ppc64le-gcc-debug:
>         CONFIG_UBSAN=y
>         CONFIG_UBSAN_FATAL=y
>   
> -debian-12-riscv64-gcc-debug:
> +debian-13-riscv64-gcc-debug:
>     extends: .gcc-riscv64-cross-build-debug
>     variables:
> -    CONTAINER: debian:12-riscv64
> +    CONTAINER: debian:13-riscv64
>       KBUILD_DEFCONFIG: tiny64_defconfig
>       HYPERVISOR_ONLY: y
>       EXTRA_XEN_CONFIG: |
> @@ -727,6 +727,20 @@ debian-12-riscv64-gcc:
>       KBUILD_DEFCONFIG: tiny64_defconfig
>       HYPERVISOR_ONLY: y
>   
> +debian-12-riscv64-gcc-debug:
> +  extends: .gcc-riscv64-cross-build-debug
> +  variables:
> +    CONTAINER: debian:12-riscv64
> +    KBUILD_DEFCONFIG: tiny64_defconfig
> +    HYPERVISOR_ONLY: y

Don't you mind to keep an order? So:
   debian-12-riscv64-gcc-debug:
   ...
   debian-13-riscv64-gcc-debug:
   ...

Also, it will make a diff a little bit better.

> +
> +debian-13-riscv64-gcc:
> +  extends: .gcc-riscv64-cross-build
> +  variables:
> +    CONTAINER: debian:13-riscv64
> +    KBUILD_DEFCONFIG: tiny64_defconfig
> +    HYPERVISOR_ONLY: y
> +
>   .riscv-fixed-randconfig:
>     variables: &riscv-fixed-randconfig
>       EXTRA_FIXED_RANDCONFIG: |
> @@ -739,10 +753,10 @@ debian-12-riscv64-gcc:
>         CONFIG_VM_EVENT=n
>         CONFIG_XSM=n
>   
> -debian-12-riscv64-gcc-randconfig:
> +debian-13-riscv64-gcc-randconfig:

Are we going to have randconfig build test only for Debian-13?

>     extends: .gcc-riscv64-cross-build
>     variables:
> -    CONTAINER: debian:12-riscv64
> +    CONTAINER: debian:13-riscv64
>       KBUILD_DEFCONFIG: tiny64_defconfig
>       RANDCONFIG: y
>       <<: *riscv-fixed-randconfig
> diff --git a/automation/gitlab-ci/test.yaml b/automation/gitlab-ci/test.yaml
> index 2f6f3affa637..9acd984d294c 100644
> --- a/automation/gitlab-ci/test.yaml
> +++ b/automation/gitlab-ci/test.yaml
> @@ -705,7 +705,7 @@ qemu-smoke-riscv64-gcc:
>     script:
>       - ./automation/scripts/qemu-smoke-riscv64.sh 2>&1 | tee ${LOGFILE}
>     needs:
> -    - debian-12-riscv64-gcc-debug
> +    - debian-13-riscv64-gcc-debug

The same as above, are we going to run smoke tests only for Debian-13?

If the answer to this and the question above is “yes,” then (probably
keeping the order — first debian-12, then debian-13 — for the jobs):
  Reviewed-by: Oleksii Kurochko<oleksii.kurochko@gmail.com>

Thanks.

~ Oleksii

>   
>   qemu-smoke-ppc64le-powernv9-gcc:
>     extends: .qemu-ppc64le
Re: [PATCH 3/5] CI: Update riscv64 to use Debian Trixie
Posted by Andrew Cooper 2 months, 2 weeks ago
On 11/08/2025 9:43 am, Oleksii Kurochko wrote:
>
>
> On 8/10/25 12:12 AM, Andrew Cooper wrote:
>> Everything works fine with Debian 13.  Provide two new build jobs, and update
>> both the randconfig the test jobs.
>>
>> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
>> ---
>> CC: Anthony PERARD <anthony.perard@vates.tech>
>> CC: Michal Orzel <michal.orzel@amd.com>
>> CC: Jan Beulich <jbeulich@suse.com>
>> CC: Julien Grall <julien@xen.org>
>> CC: Roger Pau Monné <roger.pau@citrix.com>
>> CC: Stefano Stabellini <sstabellini@kernel.org>
>> CC: Shawn Anastasio <sanastasio@raptorengineering.com>
>> CC: Oleksii Kurochko <oleksii.kurochko@gmail.com>
>> CC: Doug Goldstein <cardoe@cardoe.com>
>> CC: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
>> CC: Victor Lira <victorm.lira@amd.com>
>>
>> https://gitlab.com/xen-project/hardware/xen-staging/-/pipelines/1975929387
>> ---
>>  automation/gitlab-ci/build.yaml | 22 ++++++++++++++++++----
>>  automation/gitlab-ci/test.yaml  |  2 +-
>>  2 files changed, 19 insertions(+), 5 deletions(-)
>>
>> diff --git a/automation/gitlab-ci/build.yaml b/automation/gitlab-ci/build.yaml
>> index 3fe539dc5683..f8e45f3467c8 100644
>> --- a/automation/gitlab-ci/build.yaml
>> +++ b/automation/gitlab-ci/build.yaml
>> @@ -329,10 +329,10 @@ debian-13-ppc64le-gcc-debug:
>>        CONFIG_UBSAN=y
>>        CONFIG_UBSAN_FATAL=y
>>  
>> -debian-12-riscv64-gcc-debug:
>> +debian-13-riscv64-gcc-debug:
>>    extends: .gcc-riscv64-cross-build-debug
>>    variables:
>> -    CONTAINER: debian:12-riscv64
>> +    CONTAINER: debian:13-riscv64
>>      KBUILD_DEFCONFIG: tiny64_defconfig
>>      HYPERVISOR_ONLY: y
>>      EXTRA_XEN_CONFIG: |
>> @@ -727,6 +727,20 @@ debian-12-riscv64-gcc:
>>      KBUILD_DEFCONFIG: tiny64_defconfig
>>      HYPERVISOR_ONLY: y
>>  
>> +debian-12-riscv64-gcc-debug:
>> +  extends: .gcc-riscv64-cross-build-debug
>> +  variables:
>> +    CONTAINER: debian:12-riscv64
>> +    KBUILD_DEFCONFIG: tiny64_defconfig
>> +    HYPERVISOR_ONLY: y
> Don't you mind to keep an order? So:
>   debian-12-riscv64-gcc-debug:
>   ...
>   debian-13-riscv64-gcc-debug:
>   ...

Notice how those 2 hunks are 400 lines apart in the file.

This is deliberate so debian-13-riscv64-gcc-debug (the one needed for
tests) is scheduled with higher priority than the others.

The diff certainly isn't great, but this is necessary to shorten the
pipeline.

>
> Also, it will make a diff a little bit better.
>
>> +
>> +debian-13-riscv64-gcc:
>> +  extends: .gcc-riscv64-cross-build
>> +  variables:
>> +    CONTAINER: debian:13-riscv64
>> +    KBUILD_DEFCONFIG: tiny64_defconfig
>> +    HYPERVISOR_ONLY: y
>> +
>>  .riscv-fixed-randconfig:
>>    variables: &riscv-fixed-randconfig
>>      EXTRA_FIXED_RANDCONFIG: |
>> @@ -739,10 +753,10 @@ debian-12-riscv64-gcc:
>>        CONFIG_VM_EVENT=n
>>        CONFIG_XSM=n
>>  
>> -debian-12-riscv64-gcc-randconfig:
>> +debian-13-riscv64-gcc-randconfig:
> Are we going to have randconfig build test only for Debian-13?

We only have finite test capacity.

>
>>    extends: .gcc-riscv64-cross-build
>>    variables:
>> -    CONTAINER: debian:12-riscv64
>> +    CONTAINER: debian:13-riscv64
>>      KBUILD_DEFCONFIG: tiny64_defconfig
>>      RANDCONFIG: y
>>      <<: *riscv-fixed-randconfig
>> diff --git a/automation/gitlab-ci/test.yaml b/automation/gitlab-ci/test.yaml
>> index 2f6f3affa637..9acd984d294c 100644
>> --- a/automation/gitlab-ci/test.yaml
>> +++ b/automation/gitlab-ci/test.yaml
>> @@ -705,7 +705,7 @@ qemu-smoke-riscv64-gcc:
>>    script:
>>      - ./automation/scripts/qemu-smoke-riscv64.sh 2>&1 | tee ${LOGFILE}
>>    needs:
>> -    - debian-12-riscv64-gcc-debug
>> +    - debian-13-riscv64-gcc-debug
> The same as above, are we going to run smoke tests only for Debian-13?

Again, test capacity.  Even for x86 and ARM, we only have one main build
under test.

>
> If the answer to this and the question above is “yes,” then (probably
> keeping the order — first debian-12, then debian-13 — for the jobs):
>  Reviewed-by: Oleksii Kurochko <oleksii.kurochko@gmail.com>

Sorry, but rearranging is one thing that can't really happen.  Are you
happy with my justification?

~Andrew

Re: [PATCH 3/5] CI: Update riscv64 to use Debian Trixie
Posted by Oleksii Kurochko 2 months, 2 weeks ago
On 8/11/25 11:56 AM, Andrew Cooper wrote:
> On 11/08/2025 9:43 am, Oleksii Kurochko wrote:
>>
>> On 8/10/25 12:12 AM, Andrew Cooper wrote:
>>> Everything works fine with Debian 13.  Provide two new build jobs, and update
>>> both the randconfig the test jobs.
>>>
>>> Signed-off-by: Andrew Cooper<andrew.cooper3@citrix.com>
>>> ---
>>> CC: Anthony PERARD<anthony.perard@vates.tech>
>>> CC: Michal Orzel<michal.orzel@amd.com>
>>> CC: Jan Beulich<jbeulich@suse.com>
>>> CC: Julien Grall<julien@xen.org>
>>> CC: Roger Pau Monné<roger.pau@citrix.com>
>>> CC: Stefano Stabellini<sstabellini@kernel.org>
>>> CC: Shawn Anastasio<sanastasio@raptorengineering.com>
>>> CC: Oleksii Kurochko<oleksii.kurochko@gmail.com>
>>> CC: Doug Goldstein<cardoe@cardoe.com>
>>> CC: Marek Marczykowski-Górecki<marmarek@invisiblethingslab.com>
>>> CC: Victor Lira<victorm.lira@amd.com>
>>>
>>> https://gitlab.com/xen-project/hardware/xen-staging/-/pipelines/1975929387
>>> ---
>>>   automation/gitlab-ci/build.yaml | 22 ++++++++++++++++++----
>>>   automation/gitlab-ci/test.yaml  |  2 +-
>>>   2 files changed, 19 insertions(+), 5 deletions(-)
>>>
>>> diff --git a/automation/gitlab-ci/build.yaml b/automation/gitlab-ci/build.yaml
>>> index 3fe539dc5683..f8e45f3467c8 100644
>>> --- a/automation/gitlab-ci/build.yaml
>>> +++ b/automation/gitlab-ci/build.yaml
>>> @@ -329,10 +329,10 @@ debian-13-ppc64le-gcc-debug:
>>>         CONFIG_UBSAN=y
>>>         CONFIG_UBSAN_FATAL=y
>>>   
>>> -debian-12-riscv64-gcc-debug:
>>> +debian-13-riscv64-gcc-debug:
>>>     extends: .gcc-riscv64-cross-build-debug
>>>     variables:
>>> -    CONTAINER: debian:12-riscv64
>>> +    CONTAINER: debian:13-riscv64
>>>       KBUILD_DEFCONFIG: tiny64_defconfig
>>>       HYPERVISOR_ONLY: y
>>>       EXTRA_XEN_CONFIG: |
>>> @@ -727,6 +727,20 @@ debian-12-riscv64-gcc:
>>>       KBUILD_DEFCONFIG: tiny64_defconfig
>>>       HYPERVISOR_ONLY: y
>>>   
>>> +debian-12-riscv64-gcc-debug:
>>> +  extends: .gcc-riscv64-cross-build-debug
>>> +  variables:
>>> +    CONTAINER: debian:12-riscv64
>>> +    KBUILD_DEFCONFIG: tiny64_defconfig
>>> +    HYPERVISOR_ONLY: y
>> Don't you mind to keep an order? So:
>>    debian-12-riscv64-gcc-debug:
>>    ...
>>    debian-13-riscv64-gcc-debug:
>>    ...
> Notice how those 2 hunks are 400 lines apart in the file.
>
> This is deliberate so debian-13-riscv64-gcc-debug (the one needed for
> tests) is scheduled with higher priority than the others.
>
> The diff certainly isn't great, but this is necessary to shorten the
> pipeline.
>
>> Also, it will make a diff a little bit better.
>>
>>> +
>>> +debian-13-riscv64-gcc:
>>> +  extends: .gcc-riscv64-cross-build
>>> +  variables:
>>> +    CONTAINER: debian:13-riscv64
>>> +    KBUILD_DEFCONFIG: tiny64_defconfig
>>> +    HYPERVISOR_ONLY: y
>>> +
>>>   .riscv-fixed-randconfig:
>>>     variables: &riscv-fixed-randconfig
>>>       EXTRA_FIXED_RANDCONFIG: |
>>> @@ -739,10 +753,10 @@ debian-12-riscv64-gcc:
>>>         CONFIG_VM_EVENT=n
>>>         CONFIG_XSM=n
>>>   
>>> -debian-12-riscv64-gcc-randconfig:
>>> +debian-13-riscv64-gcc-randconfig:
>> Are we going to have randconfig build test only for Debian-13?
> We only have finite test capacity.
>
>>>     extends: .gcc-riscv64-cross-build
>>>     variables:
>>> -    CONTAINER: debian:12-riscv64
>>> +    CONTAINER: debian:13-riscv64
>>>       KBUILD_DEFCONFIG: tiny64_defconfig
>>>       RANDCONFIG: y
>>>       <<: *riscv-fixed-randconfig
>>> diff --git a/automation/gitlab-ci/test.yaml b/automation/gitlab-ci/test.yaml
>>> index 2f6f3affa637..9acd984d294c 100644
>>> --- a/automation/gitlab-ci/test.yaml
>>> +++ b/automation/gitlab-ci/test.yaml
>>> @@ -705,7 +705,7 @@ qemu-smoke-riscv64-gcc:
>>>     script:
>>>       - ./automation/scripts/qemu-smoke-riscv64.sh 2>&1 | tee ${LOGFILE}
>>>     needs:
>>> -    - debian-12-riscv64-gcc-debug
>>> +    - debian-13-riscv64-gcc-debug
>> The same as above, are we going to run smoke tests only for Debian-13?
> Again, test capacity.  Even for x86 and ARM, we only have one main build
> under test.
>
>> If the answer to this and the question above is “yes,” then (probably
>> keeping the order — first debian-12, then debian-13 — for the jobs):
>>   Reviewed-by: Oleksii Kurochko<oleksii.kurochko@gmail.com>
> Sorry, but rearranging is one thing that can't really happen.  Are you
> happy with my justification?

Yes, I am happy with that. Feel free to add my Reviewed-by.

Thanks for an explanation.

~ Oleksii