All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v4 0/8] CI: Add Debian Trixie
@ 2025-09-12 14:44 Andrew Cooper
  2025-09-12 14:44 ` [PATCH v4 1/8] CI: Use the Debian Trixie container for RISC-V test jobs Andrew Cooper
                   ` (8 more replies)
  0 siblings, 9 replies; 17+ messages in thread
From: Andrew Cooper @ 2025-09-12 14:44 UTC (permalink / raw)
  To: Xen-devel
  Cc: Andrew Cooper, Anthony PERARD, Michal Orzel, Jan Beulich,
	Julien Grall, Roger Pau Monné, Stefano Stabellini,
	Oleksii Kurochko, Marek Marczykowski-Górecki

Refresh the Trixie series.  A few more bugfixes found by randconfig and log
inspection.

These containers are already built and deployed for people to test with.

https://gitlab.com/xen-project/hardware/xen-staging/-/pipelines/2036687955

Andrew Cooper (8):
  CI: Use the Debian Trixie container for RISC-V test jobs
  CI: Update ppc64 to use Debian Trixie
  CI: Merge categories in debian/12-x86_64.dockerfile
  CI: Make qemu-smoke-x86-64-gcc-efi compatible with Debian Trixie
  x86/emul: Make condition coverage warning non-fatal
  CI: Use pipefail in scripts/build
  CI: Update x86 to use Debian Trixie
  CHANGELOG: Notes about distro changes in CI

 CHANGELOG.md                                  |  3 +
 automation/build/archlinux/current.dockerfile |  1 +
 automation/build/debian/12-x86_32.dockerfile  |  1 +
 automation/build/debian/12-x86_64.dockerfile  | 12 ++--
 ...c64le.dockerfile => 13-ppc64le.dockerfile} |  2 +-
 ...x86_32.dockerfile => 13-x86_32.dockerfile} |  3 +-
 ...x86_64.dockerfile => 13-x86_64.dockerfile} | 14 ++--
 automation/build/fedora/41-x86_64.dockerfile  |  1 +
 .../opensuse/leap-15.6-x86_64.dockerfile      |  1 +
 .../opensuse/tumbleweed-x86_64.dockerfile     |  1 +
 .../build/ubuntu/16.04-x86_64.dockerfile      |  1 +
 .../build/ubuntu/18.04-x86_64.dockerfile      |  1 +
 .../build/ubuntu/20.04-x86_64.dockerfile      |  1 +
 .../build/ubuntu/22.04-x86_64.dockerfile      |  1 +
 .../build/ubuntu/24.04-x86_64.dockerfile      |  1 +
 automation/gitlab-ci/build.yaml               | 72 +++++++++++++++----
 automation/gitlab-ci/test.yaml                | 18 ++---
 automation/scripts/build                      |  2 +
 automation/scripts/containerize               |  4 +-
 automation/scripts/include/xtf-x86-64-efi     | 12 +++-
 xen/arch/x86/Makefile                         |  3 +
 21 files changed, 109 insertions(+), 46 deletions(-)
 copy automation/build/debian/{12-ppc64le.dockerfile => 13-ppc64le.dockerfile} (93%)
 copy automation/build/debian/{12-x86_32.dockerfile => 13-x86_32.dockerfile} (93%)
 copy automation/build/debian/{12-x86_64.dockerfile => 13-x86_64.dockerfile} (89%)

-- 
2.39.5



^ permalink raw reply	[flat|nested] 17+ messages in thread

* [PATCH v4 1/8] CI: Use the Debian Trixie container for RISC-V test jobs
  2025-09-12 14:44 [PATCH v4 0/8] CI: Add Debian Trixie Andrew Cooper
@ 2025-09-12 14:44 ` Andrew Cooper
  2025-09-14  4:06   ` Oleksii Kurochko
  2025-09-12 14:44 ` [PATCH v4 2/8] CI: Update ppc64 to use Debian Trixie Andrew Cooper
                   ` (7 subsequent siblings)
  8 siblings, 1 reply; 17+ messages in thread
From: Andrew Cooper @ 2025-09-12 14:44 UTC (permalink / raw)
  To: Xen-devel
  Cc: Andrew Cooper, Denis Mukhin, Anthony PERARD, Michal Orzel,
	Jan Beulich, Julien Grall, Roger Pau Monné,
	Stefano Stabellini, Shawn Anastasio, Oleksii Kurochko,
	Doug Goldstein, Marek Marczykowski-Górecki, Victor Lira

This was missed when introducing Trixie.

Fixes: aad6ebf0596f ("CI: Update riscv64 to use Debian Trixie")
Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
Reviewed-by: Denis Mukhin <dmukhin@ford.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>

v3:
 * New
---
 automation/gitlab-ci/test.yaml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/automation/gitlab-ci/test.yaml b/automation/gitlab-ci/test.yaml
index 95b883b32bb6..1de68a0fe450 100644
--- a/automation/gitlab-ci/test.yaml
+++ b/automation/gitlab-ci/test.yaml
@@ -77,7 +77,7 @@
 .qemu-riscv64:
   extends: .test-jobs-common
   variables:
-    CONTAINER: debian:12-riscv64
+    CONTAINER: debian:13-riscv64
     LOGFILE: qemu-smoke-riscv64.log
   artifacts:
     paths:
-- 
2.39.5



^ permalink raw reply related	[flat|nested] 17+ messages in thread

* [PATCH v4 2/8] CI: Update ppc64 to use Debian Trixie
  2025-09-12 14:44 [PATCH v4 0/8] CI: Add Debian Trixie Andrew Cooper
  2025-09-12 14:44 ` [PATCH v4 1/8] CI: Use the Debian Trixie container for RISC-V test jobs Andrew Cooper
@ 2025-09-12 14:44 ` Andrew Cooper
  2025-09-12 14:44 ` [PATCH v4 3/8] CI: Merge categories in debian/12-x86_64.dockerfile Andrew Cooper
                   ` (6 subsequent siblings)
  8 siblings, 0 replies; 17+ messages in thread
From: Andrew Cooper @ 2025-09-12 14:44 UTC (permalink / raw)
  To: Xen-devel
  Cc: Andrew Cooper, Denis Mukhin, Anthony PERARD, Michal Orzel,
	Jan Beulich, Julien Grall, Roger Pau Monné,
	Stefano Stabellini, Shawn Anastasio, Oleksii Kurochko,
	Doug Goldstein, Marek Marczykowski-Górecki, Victor Lira

Everything works fine with Debian 13.  Provide two new build jobs (for a total
of 6), and update the test jobs.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
Reviewed-by: Denis Mukhin <dmukhin@ford.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>

v3:
 * Update .qemu-ppc64le template too
v2:
 * Update containerize
---
 ...pc64le.dockerfile => 13-ppc64le.dockerfile} |  2 +-
 automation/gitlab-ci/build.yaml                | 18 ++++++++++++++++--
 automation/gitlab-ci/test.yaml                 |  4 ++--
 automation/scripts/containerize                |  1 +
 4 files changed, 20 insertions(+), 5 deletions(-)
 copy automation/build/debian/{12-ppc64le.dockerfile => 13-ppc64le.dockerfile} (93%)

diff --git a/automation/build/debian/12-ppc64le.dockerfile b/automation/build/debian/13-ppc64le.dockerfile
similarity index 93%
copy from automation/build/debian/12-ppc64le.dockerfile
copy to automation/build/debian/13-ppc64le.dockerfile
index da518aab4e10..5b22a4545842 100644
--- a/automation/build/debian/12-ppc64le.dockerfile
+++ b/automation/build/debian/13-ppc64le.dockerfile
@@ -1,5 +1,5 @@
 # syntax=docker/dockerfile:1
-FROM --platform=linux/amd64 debian:bookworm-slim
+FROM --platform=linux/amd64 debian:trixie-slim
 LABEL maintainer.name="The Xen Project"
 LABEL maintainer.email="xen-devel@lists.xenproject.org"
 
diff --git a/automation/gitlab-ci/build.yaml b/automation/gitlab-ci/build.yaml
index c0728e58c48b..f8e45f3467c8 100644
--- a/automation/gitlab-ci/build.yaml
+++ b/automation/gitlab-ci/build.yaml
@@ -319,10 +319,10 @@ debian-12-x86_64-clang-debug:
   variables:
     CONTAINER: debian:12-x86_64
 
-debian-12-ppc64le-gcc-debug:
+debian-13-ppc64le-gcc-debug:
   extends: .gcc-ppc64le-cross-build-debug
   variables:
-    CONTAINER: debian:12-ppc64le
+    CONTAINER: debian:13-ppc64le
     KBUILD_DEFCONFIG: ppc64_defconfig
     HYPERVISOR_ONLY: y
     EXTRA_XEN_CONFIG: |
@@ -705,6 +705,20 @@ debian-12-ppc64le-gcc:
     KBUILD_DEFCONFIG: ppc64_defconfig
     HYPERVISOR_ONLY: y
 
+debian-12-ppc64le-gcc-debug:
+  extends: .gcc-ppc64le-cross-build-debug
+  variables:
+    CONTAINER: debian:12-ppc64le
+    KBUILD_DEFCONFIG: ppc64_defconfig
+    HYPERVISOR_ONLY: y
+
+debian-13-ppc64le-gcc:
+  extends: .gcc-ppc64le-cross-build
+  variables:
+    CONTAINER: debian:13-ppc64le
+    KBUILD_DEFCONFIG: ppc64_defconfig
+    HYPERVISOR_ONLY: y
+
 # RISC-V 64 cross-build
 debian-12-riscv64-gcc:
   extends: .gcc-riscv64-cross-build
diff --git a/automation/gitlab-ci/test.yaml b/automation/gitlab-ci/test.yaml
index 1de68a0fe450..e8946e15dc3a 100644
--- a/automation/gitlab-ci/test.yaml
+++ b/automation/gitlab-ci/test.yaml
@@ -90,7 +90,7 @@
 .qemu-ppc64le:
   extends: .test-jobs-common
   variables:
-    CONTAINER: debian:12-ppc64le
+    CONTAINER: debian:13-ppc64le
     LOGFILE: qemu-smoke-ppc64le.log
   artifacts:
     paths:
@@ -712,4 +712,4 @@ qemu-smoke-ppc64le-powernv9-gcc:
   script:
     - ./automation/scripts/qemu-smoke-ppc64le.sh powernv9 2>&1 | tee ${LOGFILE}
   needs:
-    - debian-12-ppc64le-gcc-debug
+    - debian-13-ppc64le-gcc-debug
diff --git a/automation/scripts/containerize b/automation/scripts/containerize
index 340b6caaab44..65c8804ce5f3 100755
--- a/automation/scripts/containerize
+++ b/automation/scripts/containerize
@@ -31,6 +31,7 @@ case "_${CONTAINER}" in
     _fedora) CONTAINER="${BASE}/fedora:41-x86_64";;
     _bullseye-ppc64le) CONTAINER="${BASE}/debian:11-ppc64le" ;;
     _bookworm-ppc64le) CONTAINER="${BASE}/debian:12-ppc64le" ;;
+    _trixie-ppc64le) CONTAINER="${BASE}/debian:13-ppc64le" ;;
     _bookworm-riscv64) CONTAINER="${BASE}/debian:12-riscv64" ;;
     _trixie-riscv64) CONTAINER="${BASE}/debian:13-riscv64" ;;
     _bookworm-x86_64-gcc-ibt) CONTAINER="${BASE}/debian:12-x86_64-gcc-ibt" ;;
-- 
2.39.5



^ permalink raw reply related	[flat|nested] 17+ messages in thread

* [PATCH v4 3/8] CI: Merge categories in debian/12-x86_64.dockerfile
  2025-09-12 14:44 [PATCH v4 0/8] CI: Add Debian Trixie Andrew Cooper
  2025-09-12 14:44 ` [PATCH v4 1/8] CI: Use the Debian Trixie container for RISC-V test jobs Andrew Cooper
  2025-09-12 14:44 ` [PATCH v4 2/8] CI: Update ppc64 to use Debian Trixie Andrew Cooper
@ 2025-09-12 14:44 ` Andrew Cooper
  2025-09-12 15:41   ` Marek Marczykowski-Górecki
  2025-09-12 14:44 ` [PATCH v4 4/8] CI: Make qemu-smoke-x86-64-gcc-efi compatible with Debian Trixie Andrew Cooper
                   ` (5 subsequent siblings)
  8 siblings, 1 reply; 17+ messages in thread
From: Andrew Cooper @ 2025-09-12 14:44 UTC (permalink / raw)
  To: Xen-devel
  Cc: Andrew Cooper, Denis Mukhin, Anthony PERARD, Michal Orzel,
	Jan Beulich, Julien Grall, Roger Pau Monné,
	Stefano Stabellini, Shawn Anastasio, Oleksii Kurochko,
	Doug Goldstein, Marek Marczykowski-Górecki, Victor Lira

cpio needs to be in Tools (general) now that it's used by the general build
script.  Merge the rest of the test phase jobs into one group, to avoid being
overly fine-grain.

No functional change.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
Reviewed-by: Denis Mukhin <dmukhin@ford.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>

Prep for making a Debian Trixie derivative.

v3:
 * New
---
 automation/build/debian/12-x86_64.dockerfile | 12 ++++--------
 1 file changed, 4 insertions(+), 8 deletions(-)

diff --git a/automation/build/debian/12-x86_64.dockerfile b/automation/build/debian/12-x86_64.dockerfile
index 3cf99c730b61..4e533ee879fd 100644
--- a/automation/build/debian/12-x86_64.dockerfile
+++ b/automation/build/debian/12-x86_64.dockerfile
@@ -23,6 +23,7 @@ RUN <<EOF
 
         # Tools (general)
         ca-certificates
+        cpio
         git-core
         pkg-config
         wget
@@ -52,19 +53,14 @@ RUN <<EOF
         ocaml-nox
         ocaml-findlib
 
-        # for test phase, qemu-smoke-* jobs
+        # for test phase, qemu-* jobs
+        busybox-static
         expect
+        ovmf
         qemu-system-x86
 
         # for build-each-commit-gcc
         ccache
-
-        # for qemu-alpine-x86_64-gcc
-        busybox-static
-        cpio
-
-        # For *-efi jobs
-        ovmf
     )
 
     apt-get -y --no-install-recommends install "${DEPS[@]}"
-- 
2.39.5



^ permalink raw reply related	[flat|nested] 17+ messages in thread

* [PATCH v4 4/8] CI: Make qemu-smoke-x86-64-gcc-efi compatible with Debian Trixie
  2025-09-12 14:44 [PATCH v4 0/8] CI: Add Debian Trixie Andrew Cooper
                   ` (2 preceding siblings ...)
  2025-09-12 14:44 ` [PATCH v4 3/8] CI: Merge categories in debian/12-x86_64.dockerfile Andrew Cooper
@ 2025-09-12 14:44 ` Andrew Cooper
  2025-09-12 14:44 ` [PATCH v4 5/8] x86/emul: Make condition coverage warning non-fatal Andrew Cooper
                   ` (4 subsequent siblings)
  8 siblings, 0 replies; 17+ messages in thread
From: Andrew Cooper @ 2025-09-12 14:44 UTC (permalink / raw)
  To: Xen-devel
  Cc: Andrew Cooper, Denis Mukhin, Anthony PERARD, Michal Orzel,
	Jan Beulich, Julien Grall, Roger Pau Monné,
	Stefano Stabellini, Shawn Anastasio, Oleksii Kurochko,
	Doug Goldstein, Marek Marczykowski-Górecki, Victor Lira

The OVMF package in Debian Trixie has _4M suffixes on the files.  Have
scripts/include/xtf-x86-64-efi check for this before falling back to no
suffix.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
Reviewed-by: Denis Mukhin <dmukhin@ford.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>
CC: Denis Mukhin <dmukhin@ford.com>

v4:
 * New

https://gitlab.com/xen-project/hardware/xen-staging/-/jobs/11334759836
---
 automation/scripts/include/xtf-x86-64-efi | 12 +++++++++---
 1 file changed, 9 insertions(+), 3 deletions(-)

diff --git a/automation/scripts/include/xtf-x86-64-efi b/automation/scripts/include/xtf-x86-64-efi
index e0d821b3f6fd..8340c745dbf4 100644
--- a/automation/scripts/include/xtf-x86-64-efi
+++ b/automation/scripts/include/xtf-x86-64-efi
@@ -20,6 +20,7 @@ function xtf_arch_setup()
 {
     local esp_dir="${WORKDIR}/boot-esp"
     local efi_dir="${esp_dir}/EFI/BOOT"
+    local suff=
 
     # Generate EFI boot environment
     mkdir -p ${efi_dir}
@@ -35,8 +36,13 @@ options=${XEN_CMDLINE}
 kernel=kernel
 EOF
 
+    # Vs older versions, Debian Trixie names the OVMF files with a _4M suffix.
+    if [[ -e ${FW_PREFIX}/OVMF_VARS_4M.fd ]]; then
+        suff=_4M
+    fi
+
     # NB: OVMF_CODE.fd is read-only, no need to copy
-    cp ${FW_PREFIX}OVMF_VARS.fd ${WORKDIR}
+    cp ${FW_PREFIX}OVMF_VARS${suff}.fd ${WORKDIR}
 
     export TEST_CMD="${QEMU_PREFIX}qemu-system-x86_64 \
         -no-reboot \
@@ -45,8 +51,8 @@ EOF
         -serial stdio \
         -m 512 \
         -M q35,kernel-irqchip=split \
-        -drive if=pflash,format=raw,readonly=on,file=${FW_PREFIX}OVMF_CODE.fd \
-        -drive if=pflash,format=raw,file=${WORKDIR}/OVMF_VARS.fd \
+        -drive if=pflash,format=raw,readonly=on,file=${FW_PREFIX}OVMF_CODE${suff}.fd \
+        -drive if=pflash,format=raw,file=${WORKDIR}/OVMF_VARS${suff}.fd \
         -drive file=fat:rw:${esp_dir},media=disk,index=0,format=raw \
     "
 }
-- 
2.39.5



^ permalink raw reply related	[flat|nested] 17+ messages in thread

* [PATCH v4 5/8] x86/emul: Make condition coverage warning non-fatal
  2025-09-12 14:44 [PATCH v4 0/8] CI: Add Debian Trixie Andrew Cooper
                   ` (3 preceding siblings ...)
  2025-09-12 14:44 ` [PATCH v4 4/8] CI: Make qemu-smoke-x86-64-gcc-efi compatible with Debian Trixie Andrew Cooper
@ 2025-09-12 14:44 ` Andrew Cooper
  2025-09-12 20:31   ` dmukhin
  2025-09-12 22:15   ` Andrew Cooper
  2025-09-12 14:44 ` [PATCH v4 6/8] CI: Use pipefail in scripts/build Andrew Cooper
                   ` (3 subsequent siblings)
  8 siblings, 2 replies; 17+ messages in thread
From: Andrew Cooper @ 2025-09-12 14:44 UTC (permalink / raw)
  To: Xen-devel
  Cc: Andrew Cooper, Jan Beulich, Roger Pau Monné, Anthony PERARD,
	Michal Orzel, Julien Grall, Stefano Stabellini, Volodymyr Babchuk

Randconfig with GCC-14 (Debian Trixie) found:

  In file included from arch/x86/x86_emulate/x86_emulate.c:11,
                   from arch/x86/x86_emulate.c:27:
  arch/x86/x86_emulate/x86_emulate.c: In function 'x86_emulate':
  arch/x86/x86_emulate/private.h:482:8: error: Too many conditions (found 826); giving up coverage [-Werror=coverage-too-many-conditions]
    482 | ({  if ( (p) ) {                                                          \
        |        ^
  arch/x86/x86_emulate/x86_emulate.c:1283:5: note: in expansion of macro 'generate_exception_if'
   1283 |     generate_exception_if((mode_vif() &&
        |     ^~~~~~~~~~~~~~~~~~~~~

which is a consequence of having a new enough compiler to allow
CONFIG_CONDITIONAL_COVERAGE in to the mix.

In the short term make warning non-fatal.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
---
CC: Jan Beulich <JBeulich@suse.com>
CC: Roger Pau Monné <roger.pau@citrix.com>
CC: Anthony PERARD <anthony.perard@vates.tech>
CC: Michal Orzel <michal.orzel@amd.com>
CC: Julien Grall <julien@xen.org>
CC: Stefano Stabellini <sstabellini@kernel.org>
CC: Volodymyr Babchuk <volodymyr_babchuk@epam.com>

v4:
 * New

Full failure logs:
  https://gitlab.com/xen-project/hardware/xen-staging/-/jobs/11331286819
---
 xen/arch/x86/Makefile | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/xen/arch/x86/Makefile b/xen/arch/x86/Makefile
index d7aed7d92c15..a0bba5d9085e 100644
--- a/xen/arch/x86/Makefile
+++ b/xen/arch/x86/Makefile
@@ -98,6 +98,9 @@ $(obj)/usercopy.o: CFLAGS-y += -iquote .
 ifneq ($(CONFIG_HVM),y)
 $(obj)/x86_emulate.o: CFLAGS-y += -Wno-unused-label
 endif
+ifneq ($(CONFIG_CONDITION_COVERAGE),y)
+$(obj)/x86_emulate.o: CFLAGS-y += $(call cc-option,$(CC),-Wno-error=coverage-too-many-conditions)
+endif
 
 efi-y := $(shell if [ ! -r $(objtree)/include/xen/compile.h -o \
                       -O $(objtree)/include/xen/compile.h ]; then \
-- 
2.39.5



^ permalink raw reply related	[flat|nested] 17+ messages in thread

* [PATCH v4 6/8] CI: Use pipefail in scripts/build
  2025-09-12 14:44 [PATCH v4 0/8] CI: Add Debian Trixie Andrew Cooper
                   ` (4 preceding siblings ...)
  2025-09-12 14:44 ` [PATCH v4 5/8] x86/emul: Make condition coverage warning non-fatal Andrew Cooper
@ 2025-09-12 14:44 ` Andrew Cooper
  2025-09-12 15:35   ` Marek Marczykowski-Górecki
  2025-09-12 20:30   ` dmukhin
  2025-09-12 14:44 ` [PATCH v4 7/8] CI: Update x86 to use Debian Trixie Andrew Cooper
                   ` (2 subsequent siblings)
  8 siblings, 2 replies; 17+ messages in thread
From: Andrew Cooper @ 2025-09-12 14:44 UTC (permalink / raw)
  To: Xen-devel
  Cc: Andrew Cooper, Marek Marczykowski-Górecki, Anthony PERARD,
	Michal Orzel, Jan Beulich, Julien Grall, Roger Pau Monné,
	Stefano Stabellini, Shawn Anastasio, Oleksii Kurochko,
	Doug Goldstein, Victor Lira

Marek noticed that some builds were failing with:

  + cd dist/install
  + find
  + cpio -R 0:0 -o -H newc
  ./automation/scripts/build: line 111: cpio: command not found
  + gzip

but succeeding overall, and producing a zero length xen-tools.cpio.gz as an
artefact.

In fact, it's all of:

  archlinux:current
  debian:12-x86_32
  fedora:41
  opensuse:tumbleweed
  ubuntu (all versions)

Add cpio into all of these containers, including opensuse leap for good
measure, and use pipefail in the build script.

Fixes: 4611ae6fb8f9 ("CI: save toolstack artifact as cpio.gz")
Reported-by: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
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>

v4:
 * New

I have already deployed the updated containers.

All failures:
  https://gitlab.com/xen-project/hardware/xen-staging/-/pipelines/2036157692
---
 automation/build/archlinux/current.dockerfile          | 1 +
 automation/build/debian/12-x86_32.dockerfile           | 1 +
 automation/build/fedora/41-x86_64.dockerfile           | 1 +
 automation/build/opensuse/leap-15.6-x86_64.dockerfile  | 1 +
 automation/build/opensuse/tumbleweed-x86_64.dockerfile | 1 +
 automation/build/ubuntu/16.04-x86_64.dockerfile        | 1 +
 automation/build/ubuntu/18.04-x86_64.dockerfile        | 1 +
 automation/build/ubuntu/20.04-x86_64.dockerfile        | 1 +
 automation/build/ubuntu/22.04-x86_64.dockerfile        | 1 +
 automation/build/ubuntu/24.04-x86_64.dockerfile        | 1 +
 automation/scripts/build                               | 2 ++
 11 files changed, 12 insertions(+)

diff --git a/automation/build/archlinux/current.dockerfile b/automation/build/archlinux/current.dockerfile
index 657ddd77a85c..4e53c835fa50 100644
--- a/automation/build/archlinux/current.dockerfile
+++ b/automation/build/archlinux/current.dockerfile
@@ -8,6 +8,7 @@ RUN pacman-key --init
 RUN pacman -S --refresh --sysupgrade --noconfirm --noprogressbar --needed \
         bridge-utils \
         bzip2 \
+        cpio \
         discount \
         dtc \
         e2fsprogs \
diff --git a/automation/build/debian/12-x86_32.dockerfile b/automation/build/debian/12-x86_32.dockerfile
index ef7a2571556b..447152d7e5e4 100644
--- a/automation/build/debian/12-x86_32.dockerfile
+++ b/automation/build/debian/12-x86_32.dockerfile
@@ -23,6 +23,7 @@ RUN <<EOF
 
         # Tools (general)
         ca-certificates
+        cpio
         git-core
         pkg-config
         wget
diff --git a/automation/build/fedora/41-x86_64.dockerfile b/automation/build/fedora/41-x86_64.dockerfile
index 8032a2098632..e33329aedc9e 100644
--- a/automation/build/fedora/41-x86_64.dockerfile
+++ b/automation/build/fedora/41-x86_64.dockerfile
@@ -23,6 +23,7 @@ RUN <<EOF
         checkpolicy
 
         # Tools (general)
+        cpio
         git-core
         gzip
         patch
diff --git a/automation/build/opensuse/leap-15.6-x86_64.dockerfile b/automation/build/opensuse/leap-15.6-x86_64.dockerfile
index 97890dfc006c..33db3ecd634b 100644
--- a/automation/build/opensuse/leap-15.6-x86_64.dockerfile
+++ b/automation/build/opensuse/leap-15.6-x86_64.dockerfile
@@ -29,6 +29,7 @@ RUN <<EOF
         python311
 
         # Tools (general)
+        cpio
         git-core
         gzip
         patch
diff --git a/automation/build/opensuse/tumbleweed-x86_64.dockerfile b/automation/build/opensuse/tumbleweed-x86_64.dockerfile
index 61e840fc67da..218bc45294c1 100644
--- a/automation/build/opensuse/tumbleweed-x86_64.dockerfile
+++ b/automation/build/opensuse/tumbleweed-x86_64.dockerfile
@@ -28,6 +28,7 @@ RUN <<EOF
         python3
 
         # Tools (general)
+        cpio
         git-core
         gzip
         patch
diff --git a/automation/build/ubuntu/16.04-x86_64.dockerfile b/automation/build/ubuntu/16.04-x86_64.dockerfile
index 9cc8ca89e8e0..72a46389fa0d 100644
--- a/automation/build/ubuntu/16.04-x86_64.dockerfile
+++ b/automation/build/ubuntu/16.04-x86_64.dockerfile
@@ -24,6 +24,7 @@ RUN <<EOF
 
         # Tools (general)
         ca-certificates
+        cpio
         git-core
         gzip
         patch
diff --git a/automation/build/ubuntu/18.04-x86_64.dockerfile b/automation/build/ubuntu/18.04-x86_64.dockerfile
index aefe52125a22..2634856c8980 100644
--- a/automation/build/ubuntu/18.04-x86_64.dockerfile
+++ b/automation/build/ubuntu/18.04-x86_64.dockerfile
@@ -24,6 +24,7 @@ RUN <<EOF
 
         # Tools (general)
         ca-certificates
+        cpio
         git-core
         gzip
         patch
diff --git a/automation/build/ubuntu/20.04-x86_64.dockerfile b/automation/build/ubuntu/20.04-x86_64.dockerfile
index 1ee20a13ac6b..9ec57eb975e1 100644
--- a/automation/build/ubuntu/20.04-x86_64.dockerfile
+++ b/automation/build/ubuntu/20.04-x86_64.dockerfile
@@ -24,6 +24,7 @@ RUN <<EOF
 
         # Tools (general)
         ca-certificates
+        cpio
         git-core
         gzip
         patch
diff --git a/automation/build/ubuntu/22.04-x86_64.dockerfile b/automation/build/ubuntu/22.04-x86_64.dockerfile
index a9a9b84930fb..6ae7f4faa859 100644
--- a/automation/build/ubuntu/22.04-x86_64.dockerfile
+++ b/automation/build/ubuntu/22.04-x86_64.dockerfile
@@ -24,6 +24,7 @@ RUN <<EOF
 
         # Tools (general)
         ca-certificates
+        cpio
         git-core
         gzip
         patch
diff --git a/automation/build/ubuntu/24.04-x86_64.dockerfile b/automation/build/ubuntu/24.04-x86_64.dockerfile
index 2005723b31ad..84777d188c0d 100644
--- a/automation/build/ubuntu/24.04-x86_64.dockerfile
+++ b/automation/build/ubuntu/24.04-x86_64.dockerfile
@@ -24,6 +24,7 @@ RUN <<EOF
 
         # Tools (general)
         ca-certificates
+        cpio
         git-core
         gzip
         patch
diff --git a/automation/scripts/build b/automation/scripts/build
index d0511843e7ea..7a81d229decd 100755
--- a/automation/scripts/build
+++ b/automation/scripts/build
@@ -1,5 +1,7 @@
 #!/bin/bash -ex
 
+set -o pipefail
+
 test -f /etc/os-release && cat "$_"
 
 # Construct $cc such that it matches what `make` will chose when taking
-- 
2.39.5



^ permalink raw reply related	[flat|nested] 17+ messages in thread

* [PATCH v4 7/8] CI: Update x86 to use Debian Trixie
  2025-09-12 14:44 [PATCH v4 0/8] CI: Add Debian Trixie Andrew Cooper
                   ` (5 preceding siblings ...)
  2025-09-12 14:44 ` [PATCH v4 6/8] CI: Use pipefail in scripts/build Andrew Cooper
@ 2025-09-12 14:44 ` Andrew Cooper
  2025-09-12 15:40   ` Marek Marczykowski-Górecki
  2025-09-12 14:44 ` [PATCH v4 8/8] CHANGELOG: Notes about distro changes in CI Andrew Cooper
  2025-09-12 22:18 ` [PATCH v4 0/8] CI: Add Debian Trixie Stefano Stabellini
  8 siblings, 1 reply; 17+ messages in thread
From: Andrew Cooper @ 2025-09-12 14:44 UTC (permalink / raw)
  To: Xen-devel
  Cc: Andrew Cooper, Denis Mukhin, Anthony PERARD, Michal Orzel,
	Jan Beulich, Julien Grall, Roger Pau Monné,
	Stefano Stabellini, Shawn Anastasio, Oleksii Kurochko,
	Doug Goldstein, Marek Marczykowski-Górecki, Victor Lira

With the exception of the custom IBT job, copy all Debian 12 jobs making
Debian 13 versions, then trim the Debian 12 ranconfig jobs.

Update the test jobs using Debian 12 to use 13.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
Reviewed-by: Denis Mukhin <dmukhin@ford.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>

v3:
 * Update .qemu-x86-64 too.
 * Rebase over cleanup to 12-x86_64
v2:
 * Make 13-x86_64 be root-less
 * Update containerize
---
 ...x86_32.dockerfile => 13-x86_32.dockerfile} |  2 +-
 ...x86_64.dockerfile => 13-x86_64.dockerfile} |  2 +-
 automation/gitlab-ci/build.yaml               | 54 ++++++++++++++-----
 automation/gitlab-ci/test.yaml                | 12 ++---
 automation/scripts/containerize               |  3 +-
 5 files changed, 52 insertions(+), 21 deletions(-)
 copy automation/build/debian/{12-x86_32.dockerfile => 13-x86_32.dockerfile} (95%)
 copy automation/build/debian/{12-x86_64.dockerfile => 13-x86_64.dockerfile} (96%)

diff --git a/automation/build/debian/12-x86_32.dockerfile b/automation/build/debian/13-x86_32.dockerfile
similarity index 95%
copy from automation/build/debian/12-x86_32.dockerfile
copy to automation/build/debian/13-x86_32.dockerfile
index 447152d7e5e4..464b4fc55e38 100644
--- a/automation/build/debian/12-x86_32.dockerfile
+++ b/automation/build/debian/13-x86_32.dockerfile
@@ -1,5 +1,5 @@
 # syntax=docker/dockerfile:1
-FROM --platform=linux/i386 debian:bookworm
+FROM --platform=linux/i386 debian:trixie-slim
 LABEL maintainer.name="The Xen Project"
 LABEL maintainer.email="xen-devel@lists.xenproject.org"
 
diff --git a/automation/build/debian/12-x86_64.dockerfile b/automation/build/debian/13-x86_64.dockerfile
similarity index 96%
copy from automation/build/debian/12-x86_64.dockerfile
copy to automation/build/debian/13-x86_64.dockerfile
index 4e533ee879fd..2c6c9d4a5098 100644
--- a/automation/build/debian/12-x86_64.dockerfile
+++ b/automation/build/debian/13-x86_64.dockerfile
@@ -1,5 +1,5 @@
 # syntax=docker/dockerfile:1
-FROM --platform=linux/amd64 debian:bookworm
+FROM --platform=linux/amd64 debian:trixie-slim
 LABEL maintainer.name="The Xen Project"
 LABEL maintainer.email="xen-devel@lists.xenproject.org"
 
diff --git a/automation/gitlab-ci/build.yaml b/automation/gitlab-ci/build.yaml
index f8e45f3467c8..4cb52fe59715 100644
--- a/automation/gitlab-ci/build.yaml
+++ b/automation/gitlab-ci/build.yaml
@@ -309,15 +309,15 @@ alpine-3.18-gcc-debug:
       CONFIG_UCODE_SCAN_DEFAULT=y
       CONFIG_XHCI=y
 
-debian-12-x86_64-gcc-debug:
+debian-13-x86_64-gcc-debug:
   extends: .gcc-x86-64-build-debug
   variables:
-    CONTAINER: debian:12-x86_64
+    CONTAINER: debian:13-x86_64
 
-debian-12-x86_64-clang-debug:
+debian-13-x86_64-clang-debug:
   extends: .clang-x86-64-build-debug
   variables:
-    CONTAINER: debian:12-x86_64
+    CONTAINER: debian:13-x86_64
 
 debian-13-ppc64le-gcc-debug:
   extends: .gcc-ppc64le-cross-build-debug
@@ -545,24 +545,20 @@ debian-12-x86_64-clang:
   variables:
     CONTAINER: debian:12-x86_64
 
-debian-12-x86_64-clang-randconfig:
-  extends: .clang-x86-64-build
+debian-12-x86_64-clang-debug:
+  extends: .clang-x86-64-build-debug
   variables:
     CONTAINER: debian:12-x86_64
-    RANDCONFIG: y
-    EXTRA_FIXED_RANDCONFIG: |
-      CONFIG_COVERAGE=n # Disable coverage otherwise build times out.
 
 debian-12-x86_64-gcc:
   extends: .gcc-x86-64-build
   variables:
     CONTAINER: debian:12-x86_64
 
-debian-12-x86_64-gcc-randconfig:
-  extends: .gcc-x86-64-build
+debian-12-x86_64-gcc-debug:
+  extends: .gcc-x86-64-build-debug
   variables:
     CONTAINER: debian:12-x86_64
-    RANDCONFIG: y
 
 debian-12-x86_32-clang-debug:
   extends: .clang-x86-32-build-debug
@@ -574,6 +570,40 @@ debian-12-x86_32-gcc-debug:
   variables:
     CONTAINER: debian:12-x86_32
 
+debian-13-x86_64-clang:
+  extends: .clang-x86-64-build
+  variables:
+    CONTAINER: debian:13-x86_64
+
+debian-13-x86_64-clang-randconfig:
+  extends: .clang-x86-64-build
+  variables:
+    CONTAINER: debian:13-x86_64
+    RANDCONFIG: y
+    EXTRA_FIXED_RANDCONFIG: |
+      CONFIG_COVERAGE=n # Disable coverage otherwise build times out.
+
+debian-13-x86_64-gcc:
+  extends: .gcc-x86-64-build
+  variables:
+    CONTAINER: debian:13-x86_64
+
+debian-13-x86_64-gcc-randconfig:
+  extends: .gcc-x86-64-build
+  variables:
+    CONTAINER: debian:13-x86_64
+    RANDCONFIG: y
+
+debian-13-x86_32-clang-debug:
+  extends: .clang-x86-32-build-debug
+  variables:
+    CONTAINER: debian:13-x86_32
+
+debian-13-x86_32-gcc-debug:
+  extends: .gcc-x86-32-build-debug
+  variables:
+    CONTAINER: debian:13-x86_32
+
 fedora-41-x86_64-gcc:
   extends: .gcc-x86-64-build
   variables:
diff --git a/automation/gitlab-ci/test.yaml b/automation/gitlab-ci/test.yaml
index e8946e15dc3a..8d8f62c8d04d 100644
--- a/automation/gitlab-ci/test.yaml
+++ b/automation/gitlab-ci/test.yaml
@@ -59,7 +59,7 @@
 .qemu-x86-64:
   extends: .test-jobs-common
   variables:
-    CONTAINER: debian:12-x86_64
+    CONTAINER: debian:13-x86_64
     LOGFILE: qemu-smoke-x86-64.log
   artifacts:
     paths:
@@ -661,35 +661,35 @@ qemu-smoke-x86-64-gcc:
   script:
     - ./automation/scripts/qemu-xtf.sh x86-64 pv64 example 2>&1 | tee ${LOGFILE}
   needs:
-    - debian-12-x86_64-gcc-debug
+    - debian-13-x86_64-gcc-debug
 
 qemu-smoke-x86-64-clang:
   extends: .qemu-smoke-x86-64
   script:
     - ./automation/scripts/qemu-xtf.sh x86-64 pv64 example 2>&1 | tee ${LOGFILE}
   needs:
-    - debian-12-x86_64-clang-debug
+    - debian-13-x86_64-clang-debug
 
 qemu-smoke-x86-64-gcc-pvh:
   extends: .qemu-smoke-x86-64
   script:
     - ./automation/scripts/qemu-xtf.sh x86-64 hvm64 example 2>&1 | tee ${LOGFILE}
   needs:
-    - debian-12-x86_64-gcc-debug
+    - debian-13-x86_64-gcc-debug
 
 qemu-smoke-x86-64-clang-pvh:
   extends: .qemu-smoke-x86-64
   script:
     - ./automation/scripts/qemu-xtf.sh x86-64 hvm64 example 2>&1 | tee ${LOGFILE}
   needs:
-    - debian-12-x86_64-clang-debug
+    - debian-13-x86_64-clang-debug
 
 qemu-smoke-x86-64-gcc-efi:
   extends: .qemu-smoke-x86-64
   script:
     - ./automation/scripts/qemu-xtf.sh x86-64-efi pv64 example 2>&1 | tee ${LOGFILE}
   needs:
-    - debian-12-x86_64-gcc-debug
+    - debian-13-x86_64-gcc-debug
 
 qemu-xtf-argo-x86_64-gcc-debug:
   extends: .qemu-smoke-x86-64
diff --git a/automation/scripts/containerize b/automation/scripts/containerize
index 65c8804ce5f3..743567cb772a 100755
--- a/automation/scripts/containerize
+++ b/automation/scripts/containerize
@@ -35,7 +35,8 @@ case "_${CONTAINER}" in
     _bookworm-riscv64) CONTAINER="${BASE}/debian:12-riscv64" ;;
     _trixie-riscv64) CONTAINER="${BASE}/debian:13-riscv64" ;;
     _bookworm-x86_64-gcc-ibt) CONTAINER="${BASE}/debian:12-x86_64-gcc-ibt" ;;
-    _bookworm|_bookworm-x86_64|_) CONTAINER="${BASE}/debian:12-x86_64" ;;
+    _bookworm|_bookworm-x86_64) CONTAINER="${BASE}/debian:12-x86_64" ;;
+    _trixie-x86_64|_) CONTAINER="${BASE}/debian:13-x86_64" ;;
     _bookworm-i386|_bookworm-x86_32) CONTAINER="${BASE}/debian:12-x86_32" ;;
     _bookworm-arm64v8-arm32-gcc) CONTAINER="${BASE}/debian:bookworm-arm64v8-arm32-gcc" ;;
     _bookworm-arm64v8) CONTAINER="${BASE}/debian:bookworm-arm64v8" ;;
-- 
2.39.5



^ permalink raw reply related	[flat|nested] 17+ messages in thread

* [PATCH v4 8/8] CHANGELOG: Notes about distro changes in CI
  2025-09-12 14:44 [PATCH v4 0/8] CI: Add Debian Trixie Andrew Cooper
                   ` (6 preceding siblings ...)
  2025-09-12 14:44 ` [PATCH v4 7/8] CI: Update x86 to use Debian Trixie Andrew Cooper
@ 2025-09-12 14:44 ` Andrew Cooper
  2025-09-12 22:18 ` [PATCH v4 0/8] CI: Add Debian Trixie Stefano Stabellini
  8 siblings, 0 replies; 17+ messages in thread
From: Andrew Cooper @ 2025-09-12 14:44 UTC (permalink / raw)
  To: Xen-devel
  Cc: Andrew Cooper, Oleksii Kurochko, Denis Mukhin, Anthony PERARD,
	Michal Orzel, Jan Beulich, Julien Grall, Roger Pau Monné,
	Stefano Stabellini

Also state the RISC-V baseline now it's been set, as it's the reason why
RISC-V Bullseye got dropped.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
Acked-by: Oleksii Kurochko <oleksii.kurochko@gmail.com>
Reviewed-by: Denis Mukhin <dmukhin@ford.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: Oleksii Kurochko <oleksii.kurochko@gmail.com>

v2:
 * New
---
 CHANGELOG.md | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/CHANGELOG.md b/CHANGELOG.md
index 7bd96ac09d14..ca1b43b940d2 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -10,6 +10,9 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
  - The minimum toolchain requirements have increased for some architectures:
    - For x86, GCC 5.1 and Binutils 2.25, or Clang/LLVM 11
    - For ARM32 and ARM64, GCC 5.1 and Binutils 2.25
+   - For RISC-V, GCC 12.2 and Binutils 2.39
+ - Debian Trixie added to CI.  Debian Bullseye retired from CI for RISC-V due
+   to the baseline change.
  - Linux based device model stubdomains are now fully supported.
 
  - On x86:
-- 
2.39.5



^ permalink raw reply related	[flat|nested] 17+ messages in thread

* Re: [PATCH v4 6/8] CI: Use pipefail in scripts/build
  2025-09-12 14:44 ` [PATCH v4 6/8] CI: Use pipefail in scripts/build Andrew Cooper
@ 2025-09-12 15:35   ` Marek Marczykowski-Górecki
  2025-09-12 20:30   ` dmukhin
  1 sibling, 0 replies; 17+ messages in thread
From: Marek Marczykowski-Górecki @ 2025-09-12 15:35 UTC (permalink / raw)
  To: Andrew Cooper
  Cc: Xen-devel, Anthony PERARD, Michal Orzel, Jan Beulich,
	Julien Grall, Roger Pau Monné, Stefano Stabellini,
	Shawn Anastasio, Oleksii Kurochko, Doug Goldstein, Victor Lira

[-- Attachment #1: Type: text/plain, Size: 996 bytes --]

On Fri, Sep 12, 2025 at 03:44:25PM +0100, Andrew Cooper wrote:
> Marek noticed that some builds were failing with:
> 
>   + cd dist/install
>   + find
>   + cpio -R 0:0 -o -H newc
>   ./automation/scripts/build: line 111: cpio: command not found
>   + gzip
> 
> but succeeding overall, and producing a zero length xen-tools.cpio.gz as an
> artefact.
> 
> In fact, it's all of:
> 
>   archlinux:current
>   debian:12-x86_32
>   fedora:41
>   opensuse:tumbleweed
>   ubuntu (all versions)
> 
> Add cpio into all of these containers, including opensuse leap for good
> measure, and use pipefail in the build script.
> 
> Fixes: 4611ae6fb8f9 ("CI: save toolstack artifact as cpio.gz")
> Reported-by: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>

Reviewed-by: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>


-- 
Best Regards,
Marek Marczykowski-Górecki
Invisible Things Lab

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH v4 7/8] CI: Update x86 to use Debian Trixie
  2025-09-12 14:44 ` [PATCH v4 7/8] CI: Update x86 to use Debian Trixie Andrew Cooper
@ 2025-09-12 15:40   ` Marek Marczykowski-Górecki
  0 siblings, 0 replies; 17+ messages in thread
From: Marek Marczykowski-Górecki @ 2025-09-12 15:40 UTC (permalink / raw)
  To: Andrew Cooper
  Cc: Xen-devel, Denis Mukhin, Anthony PERARD, Michal Orzel,
	Jan Beulich, Julien Grall, Roger Pau Monné,
	Stefano Stabellini, Shawn Anastasio, Oleksii Kurochko,
	Doug Goldstein, Victor Lira

[-- Attachment #1: Type: text/plain, Size: 521 bytes --]

On Fri, Sep 12, 2025 at 03:44:26PM +0100, Andrew Cooper wrote:
> With the exception of the custom IBT job, copy all Debian 12 jobs making
> Debian 13 versions, then trim the Debian 12 ranconfig jobs.
> 
> Update the test jobs using Debian 12 to use 13.
> 
> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
> Reviewed-by: Denis Mukhin <dmukhin@ford.com>

Reviewed-by: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>

-- 
Best Regards,
Marek Marczykowski-Górecki
Invisible Things Lab

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH v4 3/8] CI: Merge categories in debian/12-x86_64.dockerfile
  2025-09-12 14:44 ` [PATCH v4 3/8] CI: Merge categories in debian/12-x86_64.dockerfile Andrew Cooper
@ 2025-09-12 15:41   ` Marek Marczykowski-Górecki
  0 siblings, 0 replies; 17+ messages in thread
From: Marek Marczykowski-Górecki @ 2025-09-12 15:41 UTC (permalink / raw)
  To: Andrew Cooper
  Cc: Xen-devel, Denis Mukhin, Anthony PERARD, Michal Orzel,
	Jan Beulich, Julien Grall, Roger Pau Monné,
	Stefano Stabellini, Shawn Anastasio, Oleksii Kurochko,
	Doug Goldstein, Victor Lira

[-- Attachment #1: Type: text/plain, Size: 538 bytes --]

On Fri, Sep 12, 2025 at 03:44:22PM +0100, Andrew Cooper wrote:
> cpio needs to be in Tools (general) now that it's used by the general build
> script.  Merge the rest of the test phase jobs into one group, to avoid being
> overly fine-grain.
> 
> No functional change.
> 
> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
> Reviewed-by: Denis Mukhin <dmukhin@ford.com>

Reviewed-by: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>

-- 
Best Regards,
Marek Marczykowski-Górecki
Invisible Things Lab

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH v4 6/8] CI: Use pipefail in scripts/build
  2025-09-12 14:44 ` [PATCH v4 6/8] CI: Use pipefail in scripts/build Andrew Cooper
  2025-09-12 15:35   ` Marek Marczykowski-Górecki
@ 2025-09-12 20:30   ` dmukhin
  1 sibling, 0 replies; 17+ messages in thread
From: dmukhin @ 2025-09-12 20:30 UTC (permalink / raw)
  To: Andrew Cooper
  Cc: Xen-devel, Marek Marczykowski-Górecki, Anthony PERARD,
	Michal Orzel, Jan Beulich, Julien Grall, Roger Pau Monné,
	Stefano Stabellini, Shawn Anastasio, Oleksii Kurochko,
	Doug Goldstein, Victor Lira

On Fri, Sep 12, 2025 at 03:44:25PM +0100, Andrew Cooper wrote:
> Marek noticed that some builds were failing with:
> 
>   + cd dist/install
>   + find
>   + cpio -R 0:0 -o -H newc
>   ./automation/scripts/build: line 111: cpio: command not found
>   + gzip
> 
> but succeeding overall, and producing a zero length xen-tools.cpio.gz as an
> artefact.
> 
> In fact, it's all of:
> 
>   archlinux:current
>   debian:12-x86_32
>   fedora:41
>   opensuse:tumbleweed
>   ubuntu (all versions)
> 
> Add cpio into all of these containers, including opensuse leap for good
> measure, and use pipefail in the build script.
> 
> Fixes: 4611ae6fb8f9 ("CI: save toolstack artifact as cpio.gz")
> Reported-by: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>

Reviewed-by: Denis Mukhin <dmukhin@ford.com> 


^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH v4 5/8] x86/emul: Make condition coverage warning non-fatal
  2025-09-12 14:44 ` [PATCH v4 5/8] x86/emul: Make condition coverage warning non-fatal Andrew Cooper
@ 2025-09-12 20:31   ` dmukhin
  2025-09-12 22:15   ` Andrew Cooper
  1 sibling, 0 replies; 17+ messages in thread
From: dmukhin @ 2025-09-12 20:31 UTC (permalink / raw)
  To: Andrew Cooper
  Cc: Xen-devel, Jan Beulich, Roger Pau Monné, Anthony PERARD,
	Michal Orzel, Julien Grall, Stefano Stabellini, Volodymyr Babchuk

On Fri, Sep 12, 2025 at 03:44:24PM +0100, Andrew Cooper wrote:
> Randconfig with GCC-14 (Debian Trixie) found:
> 
>   In file included from arch/x86/x86_emulate/x86_emulate.c:11,
>                    from arch/x86/x86_emulate.c:27:
>   arch/x86/x86_emulate/x86_emulate.c: In function 'x86_emulate':
>   arch/x86/x86_emulate/private.h:482:8: error: Too many conditions (found 826); giving up coverage [-Werror=coverage-too-many-conditions]
>     482 | ({  if ( (p) ) {                                                          \
>         |        ^
>   arch/x86/x86_emulate/x86_emulate.c:1283:5: note: in expansion of macro 'generate_exception_if'
>    1283 |     generate_exception_if((mode_vif() &&
>         |     ^~~~~~~~~~~~~~~~~~~~~
> 
> which is a consequence of having a new enough compiler to allow
> CONFIG_CONDITIONAL_COVERAGE in to the mix.
> 
> In the short term make warning non-fatal.
> 
> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>

Reviewed-by: Denis Mukhin <dmukhin@ford.com> 


^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH v4 5/8] x86/emul: Make condition coverage warning non-fatal
  2025-09-12 14:44 ` [PATCH v4 5/8] x86/emul: Make condition coverage warning non-fatal Andrew Cooper
  2025-09-12 20:31   ` dmukhin
@ 2025-09-12 22:15   ` Andrew Cooper
  1 sibling, 0 replies; 17+ messages in thread
From: Andrew Cooper @ 2025-09-12 22:15 UTC (permalink / raw)
  To: Xen-devel
  Cc: Jan Beulich, Roger Pau Monné, Anthony PERARD, Michal Orzel,
	Julien Grall, Stefano Stabellini, Volodymyr Babchuk

On 12/09/2025 3:44 pm, Andrew Cooper wrote:
> Randconfig with GCC-14 (Debian Trixie) found:
>
>   In file included from arch/x86/x86_emulate/x86_emulate.c:11,
>                    from arch/x86/x86_emulate.c:27:
>   arch/x86/x86_emulate/x86_emulate.c: In function 'x86_emulate':
>   arch/x86/x86_emulate/private.h:482:8: error: Too many conditions (found 826); giving up coverage [-Werror=coverage-too-many-conditions]
>     482 | ({  if ( (p) ) {                                                          \
>         |        ^
>   arch/x86/x86_emulate/x86_emulate.c:1283:5: note: in expansion of macro 'generate_exception_if'
>    1283 |     generate_exception_if((mode_vif() &&
>         |     ^~~~~~~~~~~~~~~~~~~~~
>
> which is a consequence of having a new enough compiler to allow
> CONFIG_CONDITIONAL_COVERAGE in to the mix.
>
> In the short term make warning non-fatal.
>
> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
> ---
> CC: Jan Beulich <JBeulich@suse.com>
> CC: Roger Pau Monné <roger.pau@citrix.com>
> CC: Anthony PERARD <anthony.perard@vates.tech>
> CC: Michal Orzel <michal.orzel@amd.com>
> CC: Julien Grall <julien@xen.org>
> CC: Stefano Stabellini <sstabellini@kernel.org>
> CC: Volodymyr Babchuk <volodymyr_babchuk@epam.com>
>
> v4:
>  * New
>
> Full failure logs:
>   https://gitlab.com/xen-project/hardware/xen-staging/-/jobs/11331286819
> ---
>  xen/arch/x86/Makefile | 3 +++
>  1 file changed, 3 insertions(+)
>
> diff --git a/xen/arch/x86/Makefile b/xen/arch/x86/Makefile
> index d7aed7d92c15..a0bba5d9085e 100644
> --- a/xen/arch/x86/Makefile
> +++ b/xen/arch/x86/Makefile
> @@ -98,6 +98,9 @@ $(obj)/usercopy.o: CFLAGS-y += -iquote .
>  ifneq ($(CONFIG_HVM),y)
>  $(obj)/x86_emulate.o: CFLAGS-y += -Wno-unused-label
>  endif
> +ifneq ($(CONFIG_CONDITION_COVERAGE),y)
> +$(obj)/x86_emulate.o: CFLAGS-y += $(call cc-option,$(CC),-Wno-error=coverage-too-many-conditions)
> +endif

This should be ifeq, not ifneq.  It's probably safe to drop the
cc-option too, as that limits it to compilers which know
-fcondition-coverage

~Andrew


^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH v4 0/8] CI: Add Debian Trixie
  2025-09-12 14:44 [PATCH v4 0/8] CI: Add Debian Trixie Andrew Cooper
                   ` (7 preceding siblings ...)
  2025-09-12 14:44 ` [PATCH v4 8/8] CHANGELOG: Notes about distro changes in CI Andrew Cooper
@ 2025-09-12 22:18 ` Stefano Stabellini
  8 siblings, 0 replies; 17+ messages in thread
From: Stefano Stabellini @ 2025-09-12 22:18 UTC (permalink / raw)
  To: Andrew Cooper
  Cc: Xen-devel, Anthony PERARD, Michal Orzel, Jan Beulich,
	Julien Grall, Roger Pau Monné, Stefano Stabellini,
	Oleksii Kurochko, Marek Marczykowski-Górecki

On Fri, 12 Sep 2025, Andrew Cooper wrote:
> Refresh the Trixie series.  A few more bugfixes found by randconfig and log
> inspection.
> 
> These containers are already built and deployed for people to test with.
> 
> https://gitlab.com/xen-project/hardware/xen-staging/-/pipelines/2036687955

Acked-by: Stefano Stabellini <sstabellini@kernel.org>


^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH v4 1/8] CI: Use the Debian Trixie container for RISC-V test jobs
  2025-09-12 14:44 ` [PATCH v4 1/8] CI: Use the Debian Trixie container for RISC-V test jobs Andrew Cooper
@ 2025-09-14  4:06   ` Oleksii Kurochko
  0 siblings, 0 replies; 17+ messages in thread
From: Oleksii Kurochko @ 2025-09-14  4:06 UTC (permalink / raw)
  To: Andrew Cooper, Xen-devel
  Cc: Denis Mukhin, Anthony PERARD, Michal Orzel, Jan Beulich,
	Julien Grall, Roger Pau Monné, Stefano Stabellini,
	Shawn Anastasio, Doug Goldstein, Marek Marczykowski-Górecki,
	Victor Lira

[-- Attachment #1: Type: text/plain, Size: 1393 bytes --]


On 9/12/25 4:44 PM, Andrew Cooper wrote:
> This was missed when introducing Trixie.
>
> Fixes: aad6ebf0596f ("CI: Update riscv64 to use Debian Trixie")
> Signed-off-by: Andrew Cooper<andrew.cooper3@citrix.com>
> Reviewed-by: Denis Mukhin<dmukhin@ford.com>

Reviewed-by: Oleksii Kurochko<oleksii.kurochko@gmail.com>

~ Oleksii


> ---
> 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>
>
> v3:
>   * New
> ---
>   automation/gitlab-ci/test.yaml | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/automation/gitlab-ci/test.yaml b/automation/gitlab-ci/test.yaml
> index 95b883b32bb6..1de68a0fe450 100644
> --- a/automation/gitlab-ci/test.yaml
> +++ b/automation/gitlab-ci/test.yaml
> @@ -77,7 +77,7 @@
>   .qemu-riscv64:
>     extends: .test-jobs-common
>     variables:
> -    CONTAINER: debian:12-riscv64
> +    CONTAINER: debian:13-riscv64
>       LOGFILE: qemu-smoke-riscv64.log
>     artifacts:
>       paths:

[-- Attachment #2: Type: text/html, Size: 3026 bytes --]

^ permalink raw reply	[flat|nested] 17+ messages in thread

end of thread, other threads:[~2025-09-14  4:06 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-09-12 14:44 [PATCH v4 0/8] CI: Add Debian Trixie Andrew Cooper
2025-09-12 14:44 ` [PATCH v4 1/8] CI: Use the Debian Trixie container for RISC-V test jobs Andrew Cooper
2025-09-14  4:06   ` Oleksii Kurochko
2025-09-12 14:44 ` [PATCH v4 2/8] CI: Update ppc64 to use Debian Trixie Andrew Cooper
2025-09-12 14:44 ` [PATCH v4 3/8] CI: Merge categories in debian/12-x86_64.dockerfile Andrew Cooper
2025-09-12 15:41   ` Marek Marczykowski-Górecki
2025-09-12 14:44 ` [PATCH v4 4/8] CI: Make qemu-smoke-x86-64-gcc-efi compatible with Debian Trixie Andrew Cooper
2025-09-12 14:44 ` [PATCH v4 5/8] x86/emul: Make condition coverage warning non-fatal Andrew Cooper
2025-09-12 20:31   ` dmukhin
2025-09-12 22:15   ` Andrew Cooper
2025-09-12 14:44 ` [PATCH v4 6/8] CI: Use pipefail in scripts/build Andrew Cooper
2025-09-12 15:35   ` Marek Marczykowski-Górecki
2025-09-12 20:30   ` dmukhin
2025-09-12 14:44 ` [PATCH v4 7/8] CI: Update x86 to use Debian Trixie Andrew Cooper
2025-09-12 15:40   ` Marek Marczykowski-Górecki
2025-09-12 14:44 ` [PATCH v4 8/8] CHANGELOG: Notes about distro changes in CI Andrew Cooper
2025-09-12 22:18 ` [PATCH v4 0/8] CI: Add Debian Trixie Stefano Stabellini

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.