The original patch series broke compatibility with older Linux kernels.
In the meantime, Linux backported a fix that improves the general
behavior and also resolve the problem.
However, we still want to check Xen against possible regressions, even
against old unpatches kernels. We can use the older Linux kernel version
we had to do that.
Signed-off-by: Stefano Stabellini <stefano.stabellini@amd.com>
---
automation/gitlab-ci/build.yaml | 11 +++++++++++
automation/gitlab-ci/test.yaml | 10 ++++++++++
automation/scripts/qemu-smoke-dom0less-arm64.sh | 7 +++++--
3 files changed, 26 insertions(+), 2 deletions(-)
diff --git a/automation/gitlab-ci/build.yaml b/automation/gitlab-ci/build.yaml
index 411b4902b5..0a867c3ced 100644
--- a/automation/gitlab-ci/build.yaml
+++ b/automation/gitlab-ci/build.yaml
@@ -269,6 +269,17 @@ alpine-3.18-arm64-rootfs-export:
tags:
- arm64
+kernel-5.19-arm64-export:
+ extends: .test-jobs-artifact-common
+ image: registry.gitlab.com/xen-project/xen/tests-artifacts/kernel:5.19-arm64v8
+ script:
+ - mkdir binaries && cp /Image binaries/Image
+ artifacts:
+ paths:
+ - binaries/Image
+ tags:
+ - arm64
+
kernel-6.6.74-arm64-export:
extends: .test-jobs-artifact-common
image: registry.gitlab.com/xen-project/xen/tests-artifacts/kernel:6.6.74-arm64v8
diff --git a/automation/gitlab-ci/test.yaml b/automation/gitlab-ci/test.yaml
index 6ad45269ea..06ee2fcc7e 100644
--- a/automation/gitlab-ci/test.yaml
+++ b/automation/gitlab-ci/test.yaml
@@ -335,6 +335,16 @@ qemu-smoke-dom0less-arm64-gcc-debug:
- *arm64-test-needs
- alpine-3.18-gcc-debug-arm64
+qemu-smoke-dom0less-arm64-gcc-debug-old:
+ extends: .qemu-arm64
+ script:
+ - ./automation/scripts/qemu-smoke-dom0less-arm64.sh old 2>&1 | tee ${LOGFILE}
+ needs:
+ - alpine-3.18-arm64-rootfs-export
+ - qemu-system-aarch64-6.0.0-arm64-export
+ - alpine-3.18-gcc-debug-arm64
+ - kernel-5.19-arm64-export
+
qemu-smoke-dom0less-arm64-gcc-debug-gicv3:
extends: .qemu-arm64
script:
diff --git a/automation/scripts/qemu-smoke-dom0less-arm64.sh b/automation/scripts/qemu-smoke-dom0less-arm64.sh
index f72d209361..ddb158987a 100755
--- a/automation/scripts/qemu-smoke-dom0less-arm64.sh
+++ b/automation/scripts/qemu-smoke-dom0less-arm64.sh
@@ -7,7 +7,7 @@ test_variant=$1
# Default GIC version
gic_version="2"
-if [ -z "${test_variant}" ]; then
+if [ -z "${test_variant}" -o "${test_variant}" == "old" ]; then
passed="ping test passed"
domU_check="
until ifconfig eth0 192.168.0.2 &> /dev/null && ping -c 10 192.168.0.1; do
@@ -203,7 +203,10 @@ fi
rm -rf imagebuilder
git clone --depth 1 https://gitlab.com/xen-project/imagebuilder.git
bash imagebuilder/scripts/uboot-script-gen -t tftp -d binaries/ -c binaries/config
-
+if [ "${test_variant}" == "old" ]; then
+ sed -i "s/enabled/legacy/g" binaries/boot.source
+ mkimage -A arm64 -T script -C none -a 0x40200000 -e 0x40200000 -d binaries/boot.source binaries/boot.scr
+fi
# Run the test
rm -f smoke.serial
--
2.25.1