On 19/03/2024 08.58, Nicholas Piggin wrote:
The migration harness is complicated and easy to break so CI will
be helpful.
Signed-off-by: Nicholas Piggin <npiggin@xxxxxxxxx>
---
.gitlab-ci.yml | 18 +++++++++++-------
s390x/unittests.cfg | 8 ++++++++
2 files changed, 19 insertions(+), 7 deletions(-)
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index ff34b1f50..bd34da04f 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -92,26 +92,28 @@ build-arm:
build-ppc64be:
extends: .outoftree_template
script:
- - dnf install -y qemu-system-ppc gcc-powerpc64-linux-gnu
+ - dnf install -y qemu-system-ppc gcc-powerpc64-linux-gnu nmap-ncat
- mkdir build
- cd build
- ../configure --arch=ppc64 --endian=big --cross-prefix=powerpc64-linux-gnu-
- make -j2
- ACCEL=tcg ./run_tests.sh
- selftest-setup spapr_hcall rtas-get-time-of-day rtas-get-time-of-day-base
- rtas-set-time-of-day emulator
+ selftest-setup selftest-migration selftest-migration-skip spapr_hcall
+ rtas-get-time-of-day rtas-get-time-of-day-base rtas-set-time-of-day
I used to squash as much as possible into one line in the past, but nowadays
I rather prefer one test per line (like it is done for s390x below), so that
it is easier to identify the changes ...
So if you like, I think you could also put each test on a separate line here
now (since you're touching all lines with tests here anyway).
+ emulator
| tee results.txt
- if grep -q FAIL results.txt ; then exit 1 ; fi
build-ppc64le:
extends: .intree_template
script:
- - dnf install -y qemu-system-ppc gcc-powerpc64-linux-gnu
+ - dnf install -y qemu-system-ppc gcc-powerpc64-linux-gnu nmap-ncat
- ./configure --arch=ppc64 --endian=little --cross-prefix=powerpc64-linux-gnu-
- make -j2
- ACCEL=tcg ./run_tests.sh
- selftest-setup spapr_hcall rtas-get-time-of-day rtas-get-time-of-day-base
- rtas-set-time-of-day emulator
+ selftest-setup selftest-migration selftest-migration-skip spapr_hcall
+ rtas-get-time-of-day rtas-get-time-of-day-base rtas-set-time-of-day
+ emulator
| tee results.txt
- if grep -q FAIL results.txt ; then exit 1 ; fi
@@ -135,7 +137,7 @@ build-riscv64:
build-s390x:
extends: .outoftree_template
script:
- - dnf install -y qemu-system-s390x gcc-s390x-linux-gnu
+ - dnf install -y qemu-system-s390x gcc-s390x-linux-gnu nmap-ncat
- mkdir build
- cd build
- ../configure --arch=s390x --cross-prefix=s390x-linux-gnu-
@@ -161,6 +163,8 @@ build-s390x:
sclp-1g
sclp-3g
selftest-setup
+ selftest-migration-kvm
+ selftest-migration-skip
sieve
smp
stsi
diff --git a/s390x/unittests.cfg b/s390x/unittests.cfg
index 49e3e4608..b79b99416 100644
--- a/s390x/unittests.cfg
+++ b/s390x/unittests.cfg
@@ -31,6 +31,14 @@ groups = selftest migration
# https://lore.kernel.org/qemu-devel/20240219061731.232570-1-npiggin@xxxxxxxxx/
accel = kvm
+[selftest-migration-kvm]
+file = selftest-migration.elf
+groups = nodefault
+accel = kvm
+# This is a special test for gitlab-ci that can must not use TCG until the
"can" or "must"?
+# TCG migration fix has made its way into CI environment's QEMU.
+# https://lore.kernel.org/qemu-devel/20240219061731.232570-1-npiggin@xxxxxxxxx/
+
[selftest-migration-skip]
file = selftest-migration.elf
groups = selftest migration
Thomas