On Mon, Mar 11, 2019 at 01:40:33PM +0100, Thomas Huth wrote: > On 11/03/2019 13.34, Andrew Jones wrote: > > On Fri, Mar 01, 2019 at 07:39:15AM +0100, Thomas Huth wrote: > >> When changing common code of the kvm-unit-tests, one should make sure that > >> the tests still compile fine for all target architectures afterwards. But > >> compiling kvm-unit-tests for all target architectures manually is cumbersome. > >> For people like me who store their git trees on GitLab, this can be done > >> automatically via a CI system instead. Using the .gitlab-ci.yml file, auto- > >> matic builds are now triggered on each push to a kvm-unit-test repository on > >> gitlab.com. Additionally, the script also runs the tests that can be executed > >> with QEMU TCG (except for s390x, since the QEMU package of the CI container > >> currently does not provide the required s390-ccw bios here). > >> > >> Signed-off-by: Thomas Huth <thuth@xxxxxxxxxx> > >> --- > >> An example output can be found here: > >> https://gitlab.com/huth/kvm-unit-tests/pipelines/49788391 > >> > >> .gitlab-ci.yml | 78 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ > >> 1 file changed, 78 insertions(+) > >> create mode 100644 .gitlab-ci.yml > >> > >> diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml > >> new file mode 100644 > >> index 0000000..bc6ca0e > >> --- /dev/null > >> +++ b/.gitlab-ci.yml > >> @@ -0,0 +1,78 @@ > >> +before_script: > >> + - apt-get update -qq > >> + - apt-get install -y -qq qemu-system > >> + > >> +build-aarch64: > >> + script: > >> + - apt-get install -y -qq gcc-aarch64-linux-gnu > >> + - ./configure --arch=aarch64 --processor=arm64 > > > > If we're explicitly selecting the processor, then we should use the one > > that configure will fix it up to. > > > > --processor=cortex-a57 > > ok ... or simply omit the --processor parameter? yeah, that's fine too. > > >> + --cross-prefix=aarch64-linux-gnu- > >> + - make -j2 > >> + - ACCEL=tcg ./run_tests.sh > >> + selftest-setup selftest-vectors-kernel selftest-vectors-user selftest-smp > >> + pci-test gicv2-active gicv3-active timer > > > > Any reason to just pick the 'active' tests from the gic tests? And to drop > > PMU and PSCI tests? > > The other tests were not working with TCG for me (and KVM is not > available in these CI containers). I just tried on my notebook with tcg and see the gicv2-mmio tests fail. I now recall they always failed on tcg, so it's good to remove them. The gicv?-ipi tests work though. I also see that on arm the pmu test is segfaulting. That appears to be a regression in qemu that I wasn't aware of until now. The pmu test works on AArch64. The PSCI tests worked for me on both arm and aarch64. It also looks like that since the qemu switch to kconfig we no longer build pci-testdev for arm/aarch64. So pci-test is just resulting in SKIP now. Thanks, drew