* [PULL 00/16] testing updates
@ 2020-02-04 18:40 Alex Bennée
2020-02-04 18:40 ` [PULL 01/16] tests/docker: move most cross compilers to buster base Alex Bennée
` (16 more replies)
0 siblings, 17 replies; 18+ messages in thread
From: Alex Bennée @ 2020-02-04 18:40 UTC (permalink / raw)
To: peter.maydell; +Cc: Alex Bennée, qemu-devel
The following changes since commit 7bd9d0a9e26c7a3c67c0f174f0009ba19969b158:
Merge remote-tracking branch 'remotes/huth-gitlab/tags/pull-request-2020-02-04' into staging (2020-02-04 16:12:31 +0000)
are available in the Git repository at:
https://github.com/stsquad/qemu.git tags/pull-testing-040220-1
for you to fetch changes up to 68e5b85e41fe7684e58cd077772b7d1e8bc092c7:
.travis.yml: ensure python3-sphinx installed for docs (2020-02-04 17:13:29 +0000)
----------------------------------------------------------------
Testing updates and build fixes:
- move more cross compilers to buster
- fix build breakage (hppa Kconfig)
- disable docs on shippable
- build docs under bionic with python3
- travis.yml re-factoring
- check capabilities of non-docker compilers
- smarter make -j parallelism
----------------------------------------------------------------
Alex Bennée (13):
tests/docker: move most cross compilers to buster base
tests/docker: better handle symlinked libs
.shippable: --disable-docs for cross-compile tests
.travis.yml: build documents under bionic
.travis.yml: move cache flushing to early common phase
.travis.yml: probe for number of available processors
tests/tcg: add a configure compiler check for ARMv8.1 and SVE
tests/tcg: gate pauth-% tests on having compiler support
.travis.yml: introduce TEST_BUILD_CMD and use it for check-tcg
.travis.yml: drop the travis_retry from tests
.travis.yml: drop cris-linux-user from the plugins test
.travis.yml: single thread build-tcg
.travis.yml: ensure python3-sphinx installed for docs
Philippe Mathieu-Daudé (2):
.travis.yml: Drop superfluous use of --python=python3 parameter
.travis.yml: Add description to each job
Wainer dos Santos Moschetta (1):
travis.yml: Install genisoimage package
.shippable.yml | 2 +-
.travis.yml | 166 ++++++++++++++-------
tests/docker/Makefile.include | 16 +-
tests/docker/docker.py | 16 +-
tests/docker/dockerfiles/debian-amd64.docker | 2 +-
tests/docker/dockerfiles/debian-armel-cross.docker | 2 +-
tests/docker/dockerfiles/debian-armhf-cross.docker | 2 +-
.../dockerfiles/debian-mips64el-cross.docker | 2 +-
.../docker/dockerfiles/debian-mipsel-cross.docker | 2 +-
.../docker/dockerfiles/debian-ppc64el-cross.docker | 2 +-
tests/docker/dockerfiles/debian-s390x-cross.docker | 2 +-
tests/tcg/aarch64/Makefile.softmmu-target | 12 +-
tests/tcg/aarch64/Makefile.target | 2 +
tests/tcg/configure.sh | 18 +++
14 files changed, 168 insertions(+), 78 deletions(-)
--
2.20.1
^ permalink raw reply [flat|nested] 18+ messages in thread
* [PULL 01/16] tests/docker: move most cross compilers to buster base
2020-02-04 18:40 [PULL 00/16] testing updates Alex Bennée
@ 2020-02-04 18:40 ` Alex Bennée
2020-02-04 18:40 ` [PULL 02/16] tests/docker: better handle symlinked libs Alex Bennée
` (15 subsequent siblings)
16 siblings, 0 replies; 18+ messages in thread
From: Alex Bennée @ 2020-02-04 18:40 UTC (permalink / raw)
To: peter.maydell
Cc: Fam Zheng, Philippe Mathieu-Daudé, Alex Bennée, qemu-devel
This includes fixing up the dependencies (Which were already wrong for
one of the mips variants).
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Tested-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Message-Id: <20200203090932.19147-2-alex.bennee@linaro.org>
diff --git a/tests/docker/Makefile.include b/tests/docker/Makefile.include
index 19dbe261699..43a86786882 100644
--- a/tests/docker/Makefile.include
+++ b/tests/docker/Makefile.include
@@ -91,19 +91,12 @@ endif
# Enforce dependencies for composite images
docker-image-debian9-mxe: docker-image-debian9
ifeq ($(HOST_ARCH),x86_64)
-docker-image-debian-amd64: docker-image-debian9
+docker-image-debian-amd64: docker-image-debian10
DOCKER_PARTIAL_IMAGES += debian-amd64-cross
else
docker-image-debian-amd64-cross: docker-image-debian10
DOCKER_PARTIAL_IMAGES += debian-amd64
endif
-docker-image-debian-armel-cross: docker-image-debian9
-docker-image-debian-armhf-cross: docker-image-debian9
-docker-image-debian-mips-cross: docker-image-debian9
-docker-image-debian-mipsel-cross: docker-image-debian9
-docker-image-debian-mips64el-cross: docker-image-debian9
-docker-image-debian-ppc64el-cross: docker-image-debian9
-docker-image-debian-s390x-cross: docker-image-debian9
docker-image-debian-win32-cross: docker-image-debian9-mxe
docker-image-debian-win64-cross: docker-image-debian9-mxe
@@ -118,12 +111,19 @@ endif
docker-image-debian-alpha-cross: docker-image-debian10
docker-image-debian-arm64-cross: docker-image-debian10
+docker-image-debian-armel-cross: docker-image-debian10
+docker-image-debian-armhf-cross: docker-image-debian10
docker-image-debian-hppa-cross: docker-image-debian10
docker-image-debian-m68k-cross: docker-image-debian10
+docker-image-debian-mips-cross: docker-image-debian10
docker-image-debian-mips64-cross: docker-image-debian10
+docker-image-debian-mips64el-cross: docker-image-debian10
+docker-image-debian-mipsel-cross: docker-image-debian10
docker-image-debian-powerpc-cross: docker-image-debian10
docker-image-debian-ppc64-cross: docker-image-debian10
+docker-image-debian-ppc64el-cross: docker-image-debian10
docker-image-debian-riscv64-cross: docker-image-debian10
+docker-image-debian-s390x-cross: docker-image-debian10
docker-image-debian-sh4-cross: docker-image-debian10
docker-image-debian-sparc64-cross: docker-image-debian10
diff --git a/tests/docker/dockerfiles/debian-amd64.docker b/tests/docker/dockerfiles/debian-amd64.docker
index 431e947ebd5..3b860af1068 100644
--- a/tests/docker/dockerfiles/debian-amd64.docker
+++ b/tests/docker/dockerfiles/debian-amd64.docker
@@ -4,7 +4,7 @@
# This docker target builds on the debian Stretch base image. Further
# libraries which are not widely available are installed by hand.
#
-FROM qemu:debian9
+FROM qemu:debian10
MAINTAINER Philippe Mathieu-Daudé <f4bug@amsat.org>
RUN apt update && \
diff --git a/tests/docker/dockerfiles/debian-armel-cross.docker b/tests/docker/dockerfiles/debian-armel-cross.docker
index 15378f8ea2c..e3794a61c95 100644
--- a/tests/docker/dockerfiles/debian-armel-cross.docker
+++ b/tests/docker/dockerfiles/debian-armel-cross.docker
@@ -3,7 +3,7 @@
#
# This docker target builds on the debian Stretch base image.
#
-FROM qemu:debian9
+FROM qemu:debian10
MAINTAINER Philippe Mathieu-Daudé <f4bug@amsat.org>
# Add the foreign architecture we want and install dependencies
diff --git a/tests/docker/dockerfiles/debian-armhf-cross.docker b/tests/docker/dockerfiles/debian-armhf-cross.docker
index 4a20af6fe1a..e163b8b9569 100644
--- a/tests/docker/dockerfiles/debian-armhf-cross.docker
+++ b/tests/docker/dockerfiles/debian-armhf-cross.docker
@@ -3,7 +3,7 @@
#
# This docker target builds on the debian Stretch base image.
#
-FROM qemu:debian9
+FROM qemu:debian10
# Add the foreign architecture we want and install dependencies
RUN dpkg --add-architecture armhf
diff --git a/tests/docker/dockerfiles/debian-mips64el-cross.docker b/tests/docker/dockerfiles/debian-mips64el-cross.docker
index 2fca1124053..453b53ef72c 100644
--- a/tests/docker/dockerfiles/debian-mips64el-cross.docker
+++ b/tests/docker/dockerfiles/debian-mips64el-cross.docker
@@ -4,7 +4,7 @@
# This docker target builds on the debian Stretch base image.
#
-FROM qemu:debian9
+FROM qemu:debian10
MAINTAINER Philippe Mathieu-Daudé <f4bug@amsat.org>
diff --git a/tests/docker/dockerfiles/debian-mipsel-cross.docker b/tests/docker/dockerfiles/debian-mipsel-cross.docker
index 4abf7832ac6..3b6e975c686 100644
--- a/tests/docker/dockerfiles/debian-mipsel-cross.docker
+++ b/tests/docker/dockerfiles/debian-mipsel-cross.docker
@@ -3,7 +3,7 @@
#
# This docker target builds on the debian Stretch base image.
#
-FROM qemu:debian9
+FROM qemu:debian10
MAINTAINER Philippe Mathieu-Daudé <f4bug@amsat.org>
diff --git a/tests/docker/dockerfiles/debian-ppc64el-cross.docker b/tests/docker/dockerfiles/debian-ppc64el-cross.docker
index 9973df9ff74..cd386f01d93 100644
--- a/tests/docker/dockerfiles/debian-ppc64el-cross.docker
+++ b/tests/docker/dockerfiles/debian-ppc64el-cross.docker
@@ -3,7 +3,7 @@
#
# This docker target builds on the debian Stretch base image.
#
-FROM qemu:debian9
+FROM qemu:debian10
# Add the foreign architecture we want and install dependencies
RUN dpkg --add-architecture ppc64el && \
diff --git a/tests/docker/dockerfiles/debian-s390x-cross.docker b/tests/docker/dockerfiles/debian-s390x-cross.docker
index eb73c988559..43fe59836f2 100644
--- a/tests/docker/dockerfiles/debian-s390x-cross.docker
+++ b/tests/docker/dockerfiles/debian-s390x-cross.docker
@@ -3,7 +3,7 @@
#
# This docker target builds on the debian Stretch base image.
#
-FROM qemu:debian9
+FROM qemu:debian10
# Add the s390x architecture
RUN dpkg --add-architecture s390x
--
2.20.1
^ permalink raw reply related [flat|nested] 18+ messages in thread
* [PULL 02/16] tests/docker: better handle symlinked libs
2020-02-04 18:40 [PULL 00/16] testing updates Alex Bennée
2020-02-04 18:40 ` [PULL 01/16] tests/docker: move most cross compilers to buster base Alex Bennée
@ 2020-02-04 18:40 ` Alex Bennée
2020-02-04 18:40 ` [PULL 03/16] travis.yml: Install genisoimage package Alex Bennée
` (14 subsequent siblings)
16 siblings, 0 replies; 18+ messages in thread
From: Alex Bennée @ 2020-02-04 18:40 UTC (permalink / raw)
To: peter.maydell
Cc: Fam Zheng, Philippe Mathieu-Daudé,
Alex Bennée, qemu-devel, Robert Foley
When we are copying we want to ensure we grab the first
resolution (the found in path section). However even that binary might
be a symlink so lets make sure we chase the symlinks to copy the right
binary to where it can be found.
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Tested-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Reviewed-by: Robert Foley <robert.foley@linaro.org>
Message-Id: <20200203090932.19147-3-alex.bennee@linaro.org>
diff --git a/tests/docker/docker.py b/tests/docker/docker.py
index 31d8adf836e..d8268c11117 100755
--- a/tests/docker/docker.py
+++ b/tests/docker/docker.py
@@ -106,18 +106,19 @@ def _get_so_libs(executable):
"""Return a list of libraries associated with an executable.
The paths may be symbolic links which would need to be resolved to
- ensure theright data is copied."""
+ ensure the right data is copied."""
libs = []
- ldd_re = re.compile(r"(/.*/)(\S*)")
+ ldd_re = re.compile(r"(?:\S+ => )?(\S*) \(:?0x[0-9a-f]+\)")
try:
ldd_output = subprocess.check_output(["ldd", executable]).decode('utf-8')
for line in ldd_output.split("\n"):
search = ldd_re.search(line)
- if search and len(search.groups()) == 2:
- so_path = search.groups()[0]
- so_lib = search.groups()[1]
- libs.append("%s/%s" % (so_path, so_lib))
+ if search:
+ try:
+ libs.append(s.group(1))
+ except IndexError:
+ pass
except subprocess.CalledProcessError:
print("%s had no associated libraries (static build?)" % (executable))
@@ -145,7 +146,8 @@ def _copy_binary_with_libs(src, bin_dest, dest_dir):
if libs:
for l in libs:
so_path = os.path.dirname(l)
- _copy_with_mkdir(l, dest_dir, so_path)
+ real_l = os.path.realpath(l)
+ _copy_with_mkdir(real_l, dest_dir, so_path)
def _check_binfmt_misc(executable):
--
2.20.1
^ permalink raw reply related [flat|nested] 18+ messages in thread
* [PULL 03/16] travis.yml: Install genisoimage package
2020-02-04 18:40 [PULL 00/16] testing updates Alex Bennée
2020-02-04 18:40 ` [PULL 01/16] tests/docker: move most cross compilers to buster base Alex Bennée
2020-02-04 18:40 ` [PULL 02/16] tests/docker: better handle symlinked libs Alex Bennée
@ 2020-02-04 18:40 ` Alex Bennée
2020-02-04 18:40 ` [PULL 04/16] .shippable: --disable-docs for cross-compile tests Alex Bennée
` (13 subsequent siblings)
16 siblings, 0 replies; 18+ messages in thread
From: Alex Bennée @ 2020-02-04 18:40 UTC (permalink / raw)
To: peter.maydell
Cc: Fam Zheng, Thomas Huth, Philippe Mathieu-Daudé,
qemu-devel, Wainer dos Santos Moschetta, Alex Bennée
From: Wainer dos Santos Moschetta <wainersm@redhat.com>
The genisoimage program is required for tests/cdrom-test
tests, otherwise they are skipped. The current Travis
environments do not provide it by default, so let's
explicitly require the genisoimage package.
Signed-off-by: Wainer dos Santos Moschetta <wainersm@redhat.com>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Tested-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20200110191254.11303-2-wainersm@redhat.com>
Message-Id: <20200203090932.19147-5-alex.bennee@linaro.org>
diff --git a/.travis.yml b/.travis.yml
index 1ae645e9fce..e75c979b6c5 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -51,6 +51,8 @@ addons:
- sparse
- uuid-dev
- gcovr
+ # Tests dependencies
+ - genisoimage
# The channel name "irc.oftc.net#qemu" is encrypted against qemu/qemu
@@ -383,6 +385,8 @@ matrix:
- libusb-1.0-0-dev
- libvdeplug-dev
- libvte-2.91-dev
+ # Tests dependencies
+ - genisoimage
env:
- TEST_CMD="make check check-tcg V=1"
- CONFIG="--disable-containers --target-list=${MAIN_SOFTMMU_TARGETS}"
@@ -412,6 +416,8 @@ matrix:
- libusb-1.0-0-dev
- libvdeplug-dev
- libvte-2.91-dev
+ # Tests dependencies
+ - genisoimage
env:
- TEST_CMD="make check check-tcg V=1"
- CONFIG="--disable-containers --target-list=${MAIN_SOFTMMU_TARGETS},ppc64le-linux-user"
@@ -441,6 +447,8 @@ matrix:
- libusb-1.0-0-dev
- libvdeplug-dev
- libvte-2.91-dev
+ # Tests dependencies
+ - genisoimage
env:
- TEST_CMD="make check check-tcg V=1"
- CONFIG="--disable-containers --target-list=${MAIN_SOFTMMU_TARGETS},s390x-linux-user"
--
2.20.1
^ permalink raw reply related [flat|nested] 18+ messages in thread
* [PULL 04/16] .shippable: --disable-docs for cross-compile tests
2020-02-04 18:40 [PULL 00/16] testing updates Alex Bennée
` (2 preceding siblings ...)
2020-02-04 18:40 ` [PULL 03/16] travis.yml: Install genisoimage package Alex Bennée
@ 2020-02-04 18:40 ` Alex Bennée
2020-02-04 18:40 ` [PULL 05/16] .travis.yml: Drop superfluous use of --python=python3 parameter Alex Bennée
` (12 subsequent siblings)
16 siblings, 0 replies; 18+ messages in thread
From: Alex Bennée @ 2020-02-04 18:40 UTC (permalink / raw)
To: peter.maydell
Cc: Fam Zheng, Philippe Mathieu-Daudé, Alex Bennée, qemu-devel
The sphinx support is fairly new and we don't seem to have all the
bugs worked out for cross development environments right now.
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Tested-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Message-Id: <20200203090932.19147-6-alex.bennee@linaro.org>
diff --git a/.shippable.yml b/.shippable.yml
index 83aae08bb4c..2cce7b56890 100644
--- a/.shippable.yml
+++ b/.shippable.yml
@@ -37,5 +37,5 @@ build:
- unset CC
- mkdir build
- cd build
- - ../configure ${QEMU_CONFIGURE_OPTS} --target-list=${TARGET_LIST}
+ - ../configure --disable-docs ${QEMU_CONFIGURE_OPTS} --target-list=${TARGET_LIST}
- make -j$(($(getconf _NPROCESSORS_ONLN) + 1))
--
2.20.1
^ permalink raw reply related [flat|nested] 18+ messages in thread
* [PULL 05/16] .travis.yml: Drop superfluous use of --python=python3 parameter
2020-02-04 18:40 [PULL 00/16] testing updates Alex Bennée
` (3 preceding siblings ...)
2020-02-04 18:40 ` [PULL 04/16] .shippable: --disable-docs for cross-compile tests Alex Bennée
@ 2020-02-04 18:40 ` Alex Bennée
2020-02-04 18:40 ` [PULL 06/16] .travis.yml: Add description to each job Alex Bennée
` (11 subsequent siblings)
16 siblings, 0 replies; 18+ messages in thread
From: Alex Bennée @ 2020-02-04 18:40 UTC (permalink / raw)
To: peter.maydell
Cc: Fam Zheng, Thomas Huth, Alex Bennée, qemu-devel,
Philippe Mathieu-Daudé, Philippe Mathieu-Daudé
From: Philippe Mathieu-Daudé <f4bug@amsat.org>
As we require Python3 since commit ddf9069963, we don't need to
explicit it with the --python=/usr/bin/python3 configure option.
Reported-by: Thomas Huth <thuth@redhat.com>
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20200125184217.30034-1-f4bug@amsat.org>
Message-Id: <20200203090932.19147-8-alex.bennee@linaro.org>
diff --git a/.travis.yml b/.travis.yml
index e75c979b6c5..75269678476 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -270,7 +270,7 @@ matrix:
# Acceptance (Functional) tests
- env:
- - CONFIG="--python=/usr/bin/python3 --target-list=x86_64-softmmu,mips-softmmu,mips64el-softmmu,aarch64-softmmu,arm-softmmu,s390x-softmmu,alpha-softmmu,ppc-softmmu,ppc64-softmmu,m68k-softmmu,sparc-softmmu"
+ - CONFIG="--target-list=x86_64-softmmu,mips-softmmu,mips64el-softmmu,aarch64-softmmu,arm-softmmu,s390x-softmmu,alpha-softmmu,ppc-softmmu,ppc64-softmmu,m68k-softmmu,sparc-softmmu"
- TEST_CMD="make check-acceptance"
after_script:
- python3 -c 'import json; r = json.load(open("tests/results/latest/results.json")); [print(t["logfile"]) for t in r["tests"] if t["status"] not in ("PASS", "SKIP")]' | xargs cat
--
2.20.1
^ permalink raw reply related [flat|nested] 18+ messages in thread
* [PULL 06/16] .travis.yml: Add description to each job
2020-02-04 18:40 [PULL 00/16] testing updates Alex Bennée
` (4 preceding siblings ...)
2020-02-04 18:40 ` [PULL 05/16] .travis.yml: Drop superfluous use of --python=python3 parameter Alex Bennée
@ 2020-02-04 18:40 ` Alex Bennée
2020-02-04 18:40 ` [PULL 07/16] .travis.yml: build documents under bionic Alex Bennée
` (10 subsequent siblings)
16 siblings, 0 replies; 18+ messages in thread
From: Alex Bennée @ 2020-02-04 18:40 UTC (permalink / raw)
To: peter.maydell
Cc: Fam Zheng, Philippe Mathieu-Daudé,
Alex Bennée, qemu-devel, Philippe Mathieu-Daudé
From: Philippe Mathieu-Daudé <f4bug@amsat.org>
The NAME variable can be used to describe nicely a job (see [*]).
As we currently have 32 jobs, use it. This helps for quickly
finding a particular job.
before: https://travis-ci.org/qemu/qemu/builds/639887646
after: https://travis-ci.org/philmd/qemu/builds/641795043
[*] https://docs.travis-ci.com/user/customizing-the-build/#naming-jobs-within-matrices
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20200125183135.28317-1-f4bug@amsat.org>
Message-Id: <20200203090932.19147-9-alex.bennee@linaro.org>
diff --git a/.travis.yml b/.travis.yml
index 75269678476..3128eff7e01 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -96,24 +96,28 @@ after_script:
matrix:
include:
- - env:
+ - name: "GCC static (user)"
+ env:
- CONFIG="--disable-system --static"
- CACHE_NAME="${TRAVIS_BRANCH}-linux-gcc-default"
# we split the system builds as it takes a while to build them all
- - env:
+ - name: "GCC (main-softmmu)"
+ env:
- CONFIG="--disable-user --target-list=${MAIN_SOFTMMU_TARGETS}"
- CACHE_NAME="${TRAVIS_BRANCH}-linux-gcc-default"
- - env:
- - CONFIG="--disable-user --target-list-exclude=${MAIN_SOFTMMU_TARGETS}"
+ - name: "GCC (other-softmmu)"
+ env:
+ - CONFIG="--disable-user --target-list-exclude=${MAIN_SOFTMMU_TARGETS}"
- CACHE_NAME="${TRAVIS_BRANCH}-linux-gcc-default"
# Just build tools and run minimal unit and softfloat checks
- - env:
+ - name: "GCC check-softfloat (user)"
+ env:
- BASE_CONFIG="--enable-tools"
- CONFIG="--disable-user --disable-system"
- TEST_CMD="make check-unit check-softfloat -j3"
@@ -121,41 +125,48 @@ matrix:
# --enable-debug implies --enable-debug-tcg, also runs quite a bit slower
- - env:
+ - name: "GCC debug (main-softmmu)"
+ env:
- CONFIG="--enable-debug --target-list=${MAIN_SOFTMMU_TARGETS}"
- CACHE_NAME="${TRAVIS_BRANCH}-linux-gcc-debug"
# TCG debug can be run just on its own and is mostly agnostic to user/softmmu distinctions
- - env:
+ - name: "GCC debug (user)"
+ env:
- CONFIG="--enable-debug-tcg --disable-system"
- CACHE_NAME="${TRAVIS_BRANCH}-linux-gcc-debug-tcg"
- - env:
+ - name: "GCC some libs disabled (main-softmmu)"
+ env:
- CONFIG="--disable-linux-aio --disable-cap-ng --disable-attr --disable-brlapi --disable-libusb --disable-replication --target-list=${MAIN_SOFTMMU_TARGETS}"
# Module builds are mostly of interest to major distros
- - env:
+ - name: "GCC modules (main-softmmu)"
+ env:
- CONFIG="--enable-modules --target-list=${MAIN_SOFTMMU_TARGETS}"
- CACHE_NAME="${TRAVIS_BRANCH}-linux-gcc-default"
# Alternate coroutines implementations are only really of interest to KVM users
# However we can't test against KVM on Travis so we can only run unit tests
- - env:
+ - name: "check-unit coroutine=ucontext"
+ env:
- CONFIG="--with-coroutine=ucontext --disable-tcg"
- TEST_CMD="make check-unit -j3 V=1"
- - env:
+ - name: "check-unit coroutine=sigaltstack"
+ env:
- CONFIG="--with-coroutine=sigaltstack --disable-tcg"
- TEST_CMD="make check-unit -j3 V=1"
# Check we can build docs and tools (out of tree)
- - env:
+ - name: "tools and docs"
+ env:
- BUILD_DIR="out-of-tree/build/dir" SRC_DIR="../../.."
- BASE_CONFIG="--enable-tools --enable-docs"
- CONFIG="--target-list=x86_64-softmmu,aarch64-linux-user"
@@ -169,13 +180,15 @@ matrix:
# Test with Clang for compile portability (Travis uses clang-5.0)
- - env:
+ - name: "Clang (user)"
+ env:
- CONFIG="--disable-system"
- CACHE_NAME="${TRAVIS_BRANCH}-linux-clang-default"
compiler: clang
- - env:
+ - name: "Clang (main-softmmu)"
+ env:
- CONFIG="--target-list=${MAIN_SOFTMMU_TARGETS} "
- CACHE_NAME="${TRAVIS_BRANCH}-linux-clang-sanitize"
compiler: clang
@@ -184,52 +197,60 @@ matrix:
- ${SRC_DIR}/configure ${CONFIG} --extra-cflags="-fsanitize=undefined -Werror" || { cat config.log && exit 1; }
- - env:
+ - name: "Clang (other-softmmu)"
+ env:
- CONFIG="--disable-user --target-list-exclude=${MAIN_SOFTMMU_TARGETS}"
- CACHE_NAME="${TRAVIS_BRANCH}-linux-clang-default"
compiler: clang
# gprof/gcov are GCC features
- - env:
+ - name: "GCC gprof/gcov"
+ env:
- CONFIG="--enable-gprof --enable-gcov --disable-pie --target-list=${MAIN_SOFTMMU_TARGETS}"
after_success:
- ${SRC_DIR}/scripts/travis/coverage-summary.sh
# We manually include builds which we disable "make check" for
- - env:
+ - name: "GCC without-default-devices (softmmu)"
+ env:
- CONFIG="--without-default-devices --disable-user"
- CACHE_NAME="${TRAVIS_BRANCH}-linux-gcc-default"
- TEST_CMD=""
# Check the TCG interpreter (TCI)
- - env:
+ - name: "GCC TCI"
+ env:
- CONFIG="--enable-debug-tcg --enable-tcg-interpreter --disable-kvm --disable-containers
--target-list=alpha-softmmu,arm-softmmu,hppa-softmmu,m68k-softmmu,microblaze-softmmu,moxie-softmmu,ppc-softmmu,s390x-softmmu,x86_64-softmmu"
- TEST_CMD="make check-qtest check-tcg V=1"
# We don't need to exercise every backend with every front-end
- - env:
+ - name: "GCC trace log,simple,syslog (user)"
+ env:
- CONFIG="--enable-trace-backends=log,simple,syslog --disable-system"
- TEST_CMD=""
- - env:
+ - name: "GCC trace ftrace (x86_64-softmmu)"
+ env:
- CONFIG="--enable-trace-backends=ftrace --target-list=x86_64-softmmu"
- TEST_CMD=""
- - env:
+ - name: "GCC trace ust (x86_64-softmmu)"
+ env:
- CONFIG="--enable-trace-backends=ust --target-list=x86_64-softmmu"
- TEST_CMD=""
# MacOSX builds - cirrus.yml also tests some MacOS builds including latest Xcode
- - env:
+ - name: "OSX Xcode 10.3"
+ env:
- CONFIG="--target-list=i386-softmmu,ppc-softmmu,ppc64-softmmu,m68k-softmmu,x86_64-softmmu"
os: osx
osx_image: xcode10.3
@@ -252,7 +273,8 @@ matrix:
# Python builds
- - env:
+ - name: "GCC Python 3.5 (x86_64-softmmu)"
+ env:
- CONFIG="--target-list=x86_64-softmmu"
- CACHE_NAME="${TRAVIS_BRANCH}-linux-gcc-default"
language: python
@@ -260,7 +282,8 @@ matrix:
- "3.5"
- - env:
+ - name: "GCC Python 3.6 (x86_64-softmmu)"
+ env:
- CONFIG="--target-list=x86_64-softmmu"
- CACHE_NAME="${TRAVIS_BRANCH}-linux-gcc-default"
language: python
@@ -269,7 +292,8 @@ matrix:
# Acceptance (Functional) tests
- - env:
+ - name: "GCC check-acceptance"
+ env:
- CONFIG="--target-list=x86_64-softmmu,mips-softmmu,mips64el-softmmu,aarch64-softmmu,arm-softmmu,s390x-softmmu,alpha-softmmu,ppc-softmmu,ppc64-softmmu,m68k-softmmu,sparc-softmmu"
- TEST_CMD="make check-acceptance"
after_script:
@@ -285,7 +309,8 @@ matrix:
# Using newer GCC with sanitizers
- - addons:
+ - name: "GCC9 with sanitizers (softmmu)"
+ addons:
apt:
update: true
sources:
@@ -333,7 +358,8 @@ matrix:
# Run check-tcg against linux-user
- - env:
+ - name: "GCC check-tcg (user)"
+ env:
- CONFIG="--disable-system --enable-debug-tcg"
- TEST_CMD="make -j3 check-tcg V=1"
- CACHE_NAME="${TRAVIS_BRANCH}-linux-gcc-debug-tcg"
@@ -341,26 +367,30 @@ matrix:
# Run check-tcg against linux-user (with plugins)
# we skip sparc64-linux-user until it has been fixed somewhat
- - env:
+ - name: "GCC plugins check-tcg (user)"
+ env:
- CONFIG="--disable-system --enable-plugins --enable-debug-tcg --target-list-exclude=sparc64-linux-user"
- TEST_CMD="make -j3 check-tcg V=1"
- CACHE_NAME="${TRAVIS_BRANCH}-linux-gcc-debug-tcg"
# Run check-tcg against softmmu targets
- - env:
+ - name: "GCC check-tcg (some-softmmu)"
+ env:
- CONFIG="--enable-debug-tcg --target-list=xtensa-softmmu,arm-softmmu,aarch64-softmmu,alpha-softmmu"
- TEST_CMD="make -j3 check-tcg V=1"
- CACHE_NAME="${TRAVIS_BRANCH}-linux-gcc-debug-tcg"
# Run check-tcg against softmmu targets (with plugins)
- - env:
+ - name: "GCC plugins check-tcg (some-softmmu)"
+ env:
- CONFIG="--enable-plugins --enable-debug-tcg --target-list=xtensa-softmmu,arm-softmmu,aarch64-softmmu,alpha-softmmu"
- TEST_CMD="make -j3 check-tcg V=1"
- CACHE_NAME="${TRAVIS_BRANCH}-linux-gcc-debug-tcg"
- - arch: arm64
+ - name: "[aarch64] GCC check-tcg"
+ arch: arm64
dist: xenial
addons:
apt_packages:
@@ -391,7 +421,8 @@ matrix:
- TEST_CMD="make check check-tcg V=1"
- CONFIG="--disable-containers --target-list=${MAIN_SOFTMMU_TARGETS}"
- - arch: ppc64le
+ - name: "[ppc64] GCC check-tcg"
+ arch: ppc64le
dist: xenial
addons:
apt_packages:
@@ -422,7 +453,8 @@ matrix:
- TEST_CMD="make check check-tcg V=1"
- CONFIG="--disable-containers --target-list=${MAIN_SOFTMMU_TARGETS},ppc64le-linux-user"
- - arch: s390x
+ - name: "[s390x] GCC check-tcg"
+ arch: s390x
dist: bionic
addons:
apt_packages:
@@ -456,7 +488,8 @@ matrix:
# Release builds
# The make-release script expect a QEMU version, so our tag must start with a 'v'.
# This is the case when release candidate tags are created.
- - if: tag IS present AND tag =~ /^v\d+\.\d+(\.\d+)?(-\S*)?$/
+ - name: "Release tarball"
+ if: tag IS present AND tag =~ /^v\d+\.\d+(\.\d+)?(-\S*)?$/
env:
# We want to build from the release tarball
- BUILD_DIR="release/build/dir" SRC_DIR="../../.."
--
2.20.1
^ permalink raw reply related [flat|nested] 18+ messages in thread
* [PULL 07/16] .travis.yml: build documents under bionic
2020-02-04 18:40 [PULL 00/16] testing updates Alex Bennée
` (5 preceding siblings ...)
2020-02-04 18:40 ` [PULL 06/16] .travis.yml: Add description to each job Alex Bennée
@ 2020-02-04 18:40 ` Alex Bennée
2020-02-04 18:40 ` [PULL 08/16] .travis.yml: move cache flushing to early common phase Alex Bennée
` (9 subsequent siblings)
16 siblings, 0 replies; 18+ messages in thread
From: Alex Bennée @ 2020-02-04 18:40 UTC (permalink / raw)
To: peter.maydell
Cc: Fam Zheng, Philippe Mathieu-Daudé, Alex Bennée, qemu-devel
It looks like the xenial tooling doesn't like something in our setup.
We should probably be moving to bionic for everything soon
anyway (libssh aside).
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Tested-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Message-Id: <20200203090932.19147-10-alex.bennee@linaro.org>
diff --git a/.travis.yml b/.travis.yml
index 3128eff7e01..f245765cfed 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -165,7 +165,8 @@ matrix:
# Check we can build docs and tools (out of tree)
- - name: "tools and docs"
+ - name: "tools and docs (bionic)"
+ dist: bionic
env:
- BUILD_DIR="out-of-tree/build/dir" SRC_DIR="../../.."
- BASE_CONFIG="--enable-tools --enable-docs"
--
2.20.1
^ permalink raw reply related [flat|nested] 18+ messages in thread
* [PULL 08/16] .travis.yml: move cache flushing to early common phase
2020-02-04 18:40 [PULL 00/16] testing updates Alex Bennée
` (6 preceding siblings ...)
2020-02-04 18:40 ` [PULL 07/16] .travis.yml: build documents under bionic Alex Bennée
@ 2020-02-04 18:40 ` Alex Bennée
2020-02-04 18:40 ` [PULL 09/16] .travis.yml: probe for number of available processors Alex Bennée
` (8 subsequent siblings)
16 siblings, 0 replies; 18+ messages in thread
From: Alex Bennée @ 2020-02-04 18:40 UTC (permalink / raw)
To: peter.maydell
Cc: Fam Zheng, Philippe Mathieu-Daudé, Alex Bennée, qemu-devel
We shall be adding more common early setup in a future commit.
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Tested-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Message-Id: <20200203090932.19147-11-alex.bennee@linaro.org>
diff --git a/.travis.yml b/.travis.yml
index f245765cfed..1b92f40eab2 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -82,11 +82,16 @@ git:
# we want to do this ourselves
submodules: false
+# Common first phase for all steps
+before_install:
+ - if command -v ccache ; then ccache --zero-stats ; fi
+# Configure step - may be overridden
before_script:
- - if command -v ccache ; then ccache --zero-stats ; fi
- mkdir -p ${BUILD_DIR} && cd ${BUILD_DIR}
- ${SRC_DIR}/configure ${BASE_CONFIG} ${CONFIG} || { cat config.log && exit 1; }
+
+# Main build & test - rarely overridden - controlled by TEST_CMD
script:
- BUILD_RC=0 && make -j3 || BUILD_RC=$?
- if [ "$BUILD_RC" -eq 0 ] ; then travis_retry ${TEST_CMD} ; else $(exit $BUILD_RC); fi
@@ -268,7 +273,6 @@ matrix:
before_script:
- brew link --overwrite python
- export PATH="/usr/local/opt/ccache/libexec:$PATH"
- - if command -v ccache ; then ccache --zero-stats ; fi
- mkdir -p ${BUILD_DIR} && cd ${BUILD_DIR}
- ${SRC_DIR}/configure ${BASE_CONFIG} ${CONFIG} || { cat config.log && exit 1; }
@@ -499,9 +503,6 @@ matrix:
- TEST_CMD="make install -j3"
- QEMU_VERSION="${TRAVIS_TAG:1}"
- CACHE_NAME="${TRAVIS_BRANCH}-linux-gcc-default"
- before_script:
- - command -v ccache && ccache --zero-stats
- - mkdir -p ${BUILD_DIR} && cd ${BUILD_DIR}
script:
- make -C ${SRC_DIR} qemu-${QEMU_VERSION}.tar.bz2
- ls -l ${SRC_DIR}/qemu-${QEMU_VERSION}.tar.bz2
--
2.20.1
^ permalink raw reply related [flat|nested] 18+ messages in thread
* [PULL 09/16] .travis.yml: probe for number of available processors
2020-02-04 18:40 [PULL 00/16] testing updates Alex Bennée
` (7 preceding siblings ...)
2020-02-04 18:40 ` [PULL 08/16] .travis.yml: move cache flushing to early common phase Alex Bennée
@ 2020-02-04 18:40 ` Alex Bennée
2020-02-04 18:40 ` [PULL 10/16] tests/tcg: add a configure compiler check for ARMv8.1 and SVE Alex Bennée
` (7 subsequent siblings)
16 siblings, 0 replies; 18+ messages in thread
From: Alex Bennée @ 2020-02-04 18:40 UTC (permalink / raw)
To: peter.maydell
Cc: Fam Zheng, Philippe Mathieu-Daudé,
Thomas Huth, Alex Bennée, qemu-devel
The arm64 hardware was especially hit by only building on 3 of the 32
available cores. Introduce a JOBS environment variable which we use
for all parallel builds. We still run the main checks single threaded
though so to make it easier to spot hangs.
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Tested-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Message-Id: <20200203090932.19147-12-alex.bennee@linaro.org>
diff --git a/.travis.yml b/.travis.yml
index 1b92f40eab2..a600f508b0a 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -85,6 +85,8 @@ git:
# Common first phase for all steps
before_install:
- if command -v ccache ; then ccache --zero-stats ; fi
+ - export JOBS=$(($(getconf _NPROCESSORS_ONLN) + 1))
+ - echo "=== Using ${JOBS} simultaneous jobs ==="
# Configure step - may be overridden
before_script:
@@ -93,7 +95,7 @@ before_script:
# Main build & test - rarely overridden - controlled by TEST_CMD
script:
- - BUILD_RC=0 && make -j3 || BUILD_RC=$?
+ - BUILD_RC=0 && make -j${JOBS} || BUILD_RC=$?
- if [ "$BUILD_RC" -eq 0 ] ; then travis_retry ${TEST_CMD} ; else $(exit $BUILD_RC); fi
after_script:
- if command -v ccache ; then ccache --show-stats ; fi
@@ -125,7 +127,7 @@ matrix:
env:
- BASE_CONFIG="--enable-tools"
- CONFIG="--disable-user --disable-system"
- - TEST_CMD="make check-unit check-softfloat -j3"
+ - TEST_CMD="make check-unit check-softfloat -j${JOBS}"
- CACHE_NAME="${TRAVIS_BRANCH}-linux-gcc-default"
@@ -160,13 +162,13 @@ matrix:
- name: "check-unit coroutine=ucontext"
env:
- CONFIG="--with-coroutine=ucontext --disable-tcg"
- - TEST_CMD="make check-unit -j3 V=1"
+ - TEST_CMD="make check-unit -j${JOBS} V=1"
- name: "check-unit coroutine=sigaltstack"
env:
- CONFIG="--with-coroutine=sigaltstack --disable-tcg"
- - TEST_CMD="make check-unit -j3 V=1"
+ - TEST_CMD="make check-unit -j${JOBS} V=1"
# Check we can build docs and tools (out of tree)
@@ -366,7 +368,7 @@ matrix:
- name: "GCC check-tcg (user)"
env:
- CONFIG="--disable-system --enable-debug-tcg"
- - TEST_CMD="make -j3 check-tcg V=1"
+ - TEST_CMD="make -j${JOBS} check-tcg V=1"
- CACHE_NAME="${TRAVIS_BRANCH}-linux-gcc-debug-tcg"
@@ -375,7 +377,7 @@ matrix:
- name: "GCC plugins check-tcg (user)"
env:
- CONFIG="--disable-system --enable-plugins --enable-debug-tcg --target-list-exclude=sparc64-linux-user"
- - TEST_CMD="make -j3 check-tcg V=1"
+ - TEST_CMD="make -j${JOBS} check-tcg V=1"
- CACHE_NAME="${TRAVIS_BRANCH}-linux-gcc-debug-tcg"
@@ -383,7 +385,7 @@ matrix:
- name: "GCC check-tcg (some-softmmu)"
env:
- CONFIG="--enable-debug-tcg --target-list=xtensa-softmmu,arm-softmmu,aarch64-softmmu,alpha-softmmu"
- - TEST_CMD="make -j3 check-tcg V=1"
+ - TEST_CMD="make -j${JOBS} check-tcg V=1"
- CACHE_NAME="${TRAVIS_BRANCH}-linux-gcc-debug-tcg"
@@ -391,7 +393,7 @@ matrix:
- name: "GCC plugins check-tcg (some-softmmu)"
env:
- CONFIG="--enable-plugins --enable-debug-tcg --target-list=xtensa-softmmu,arm-softmmu,aarch64-softmmu,alpha-softmmu"
- - TEST_CMD="make -j3 check-tcg V=1"
+ - TEST_CMD="make -j${JOBS} check-tcg V=1"
- CACHE_NAME="${TRAVIS_BRANCH}-linux-gcc-debug-tcg"
- name: "[aarch64] GCC check-tcg"
@@ -500,7 +502,7 @@ matrix:
- BUILD_DIR="release/build/dir" SRC_DIR="../../.."
- BASE_CONFIG="--prefix=$PWD/dist"
- CONFIG="--target-list=x86_64-softmmu,aarch64-softmmu,armeb-linux-user,ppc-linux-user"
- - TEST_CMD="make install -j3"
+ - TEST_CMD="make install -j${JOBS}"
- QEMU_VERSION="${TRAVIS_TAG:1}"
- CACHE_NAME="${TRAVIS_BRANCH}-linux-gcc-default"
script:
--
2.20.1
^ permalink raw reply related [flat|nested] 18+ messages in thread
* [PULL 10/16] tests/tcg: add a configure compiler check for ARMv8.1 and SVE
2020-02-04 18:40 [PULL 00/16] testing updates Alex Bennée
` (8 preceding siblings ...)
2020-02-04 18:40 ` [PULL 09/16] .travis.yml: probe for number of available processors Alex Bennée
@ 2020-02-04 18:40 ` Alex Bennée
2020-02-04 18:40 ` [PULL 11/16] tests/tcg: gate pauth-% tests on having compiler support Alex Bennée
` (6 subsequent siblings)
16 siblings, 0 replies; 18+ messages in thread
From: Alex Bennée @ 2020-02-04 18:40 UTC (permalink / raw)
To: peter.maydell; +Cc: Richard Henderson, Alex Bennée, qemu-devel
We will need this for some tests later. The docker images already
support it by default.
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-Id: <20200203090932.19147-13-alex.bennee@linaro.org>
diff --git a/tests/tcg/configure.sh b/tests/tcg/configure.sh
index 210e68396f2..e0d1fbb182f 100755
--- a/tests/tcg/configure.sh
+++ b/tests/tcg/configure.sh
@@ -216,6 +216,20 @@ for target in $target_list; do
echo "CROSS_CC_GUEST_STATIC=y" >> $config_target_mak
fi
echo "CROSS_CC_GUEST=$target_compiler" >> $config_target_mak
+
+ # Test for compiler features for optional tests. We only do this
+ # for cross compilers because ensuring the docker containers based
+ # compilers is a requirememt for adding a new test that needs a
+ # compiler feature.
+ case $target in
+ aarch64-*)
+ if do_compiler "$target_compiler" $target_compiler_cflags \
+ -march=armv8.1-a+sve -o $TMPE $TMPC; then
+ echo "CROSS_CC_HAS_SVE=y" >> $config_target_mak
+ fi
+ ;;
+ esac
+
enabled_cross_compilers="$enabled_cross_compilers $target_compiler"
got_cross_cc=yes
break
--
2.20.1
^ permalink raw reply related [flat|nested] 18+ messages in thread
* [PULL 11/16] tests/tcg: gate pauth-% tests on having compiler support
2020-02-04 18:40 [PULL 00/16] testing updates Alex Bennée
` (9 preceding siblings ...)
2020-02-04 18:40 ` [PULL 10/16] tests/tcg: add a configure compiler check for ARMv8.1 and SVE Alex Bennée
@ 2020-02-04 18:40 ` Alex Bennée
2020-02-04 18:40 ` [PULL 12/16] .travis.yml: introduce TEST_BUILD_CMD and use it for check-tcg Alex Bennée
` (5 subsequent siblings)
16 siblings, 0 replies; 18+ messages in thread
From: Alex Bennée @ 2020-02-04 18:40 UTC (permalink / raw)
To: peter.maydell; +Cc: open list:ARM TCG CPUs, Alex Bennée, qemu-devel
Otherwise we end up failing to build our tests on CI which may have
older compilers that the user expects. We can get rid of this once we
can fallback to multiarch containers.
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20200203090932.19147-14-alex.bennee@linaro.org>
diff --git a/tests/tcg/aarch64/Makefile.softmmu-target b/tests/tcg/aarch64/Makefile.softmmu-target
index f6b5121f5ce..d2299b98b76 100644
--- a/tests/tcg/aarch64/Makefile.softmmu-target
+++ b/tests/tcg/aarch64/Makefile.softmmu-target
@@ -61,7 +61,13 @@ run-memory-replay: memory-replay run-memory-record
$(QEMU_OPTS) memory, \
"$< on $(TARGET_NAME)")
-run-pauth-3: pauth-3
-pauth-3: CFLAGS += -march=armv8.3-a
+EXTRA_TESTS+=memory-record memory-replay
-EXTRA_TESTS+=memory-record memory-replay pauth-3
+ifneq ($(DOCKER_IMAGE)$(CROSS_CC_HAS_ARMV8_3),)
+pauth-3: CFLAGS += -march=armv8.3-a
+else
+pauth-3:
+ $(call skip-test, "BUILD of $@", "missing compiler support")
+run-pauth-3:
+ $(call skip-test, "RUN of pauth-3", "not built")
+endif
diff --git a/tests/tcg/aarch64/Makefile.target b/tests/tcg/aarch64/Makefile.target
index efa67cf1e9e..8ed477d0d51 100644
--- a/tests/tcg/aarch64/Makefile.target
+++ b/tests/tcg/aarch64/Makefile.target
@@ -18,9 +18,11 @@ run-fcvt: fcvt
$(call diff-out,$<,$(AARCH64_SRC)/fcvt.ref)
# Pauth Tests
+ifneq ($(DOCKER_IMAGE)$(CROSS_CC_HAS_ARMV8_3),)
AARCH64_TESTS += pauth-1 pauth-2 pauth-4
run-pauth-%: QEMU_OPTS += -cpu max
pauth-%: CFLAGS += -march=armv8.3-a
+endif
# Semihosting smoke test for linux-user
AARCH64_TESTS += semihosting
diff --git a/tests/tcg/configure.sh b/tests/tcg/configure.sh
index e0d1fbb182f..9eb6ba3b7ea 100755
--- a/tests/tcg/configure.sh
+++ b/tests/tcg/configure.sh
@@ -227,6 +227,10 @@ for target in $target_list; do
-march=armv8.1-a+sve -o $TMPE $TMPC; then
echo "CROSS_CC_HAS_SVE=y" >> $config_target_mak
fi
+ if do_compiler "$target_compiler" $target_compiler_cflags \
+ -march=-march=armv8.3-a -o $TMPE $TMPC; then
+ echo "CROSS_CC_HAS_ARMV8_3=y" >> $config_target_mak
+ fi
;;
esac
--
2.20.1
^ permalink raw reply related [flat|nested] 18+ messages in thread
* [PULL 12/16] .travis.yml: introduce TEST_BUILD_CMD and use it for check-tcg
2020-02-04 18:40 [PULL 00/16] testing updates Alex Bennée
` (10 preceding siblings ...)
2020-02-04 18:40 ` [PULL 11/16] tests/tcg: gate pauth-% tests on having compiler support Alex Bennée
@ 2020-02-04 18:40 ` Alex Bennée
2020-02-04 18:40 ` [PULL 13/16] .travis.yml: drop the travis_retry from tests Alex Bennée
` (4 subsequent siblings)
16 siblings, 0 replies; 18+ messages in thread
From: Alex Bennée @ 2020-02-04 18:40 UTC (permalink / raw)
To: peter.maydell
Cc: Fam Zheng, Philippe Mathieu-Daudé, Alex Bennée, qemu-devel
At least for check-tcg we can split the build phase from the test
phase and do the former in parallel. While we are at it drop the V=1
for the check-tcg part as it just generates a lot more noise in the
logs.
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Tested-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Message-Id: <20200203090932.19147-15-alex.bennee@linaro.org>
diff --git a/.travis.yml b/.travis.yml
index a600f508b0a..022462f6981 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -71,6 +71,7 @@ env:
- SRC_DIR=".."
- BUILD_DIR="build"
- BASE_CONFIG="--disable-docs --disable-tools"
+ - TEST_BUILD_CMD=""
- TEST_CMD="make check V=1"
# This is broadly a list of "mainline" softmmu targets which have support across the major distros
- MAIN_SOFTMMU_TARGETS="aarch64-softmmu,mips64-softmmu,ppc64-softmmu,riscv64-softmmu,s390x-softmmu,x86_64-softmmu"
@@ -96,6 +97,12 @@ before_script:
# Main build & test - rarely overridden - controlled by TEST_CMD
script:
- BUILD_RC=0 && make -j${JOBS} || BUILD_RC=$?
+ - |
+ if [ "$BUILD_RC" -eq 0 ] && [ -n "$TEST_BUILD_CMD" ]; then
+ ${TEST_BUILD_CMD} || BUILD_RC=$?
+ else
+ $(exit $BUILD_RC);
+ fi
- if [ "$BUILD_RC" -eq 0 ] ; then travis_retry ${TEST_CMD} ; else $(exit $BUILD_RC); fi
after_script:
- if command -v ccache ; then ccache --show-stats ; fi
@@ -368,7 +375,8 @@ matrix:
- name: "GCC check-tcg (user)"
env:
- CONFIG="--disable-system --enable-debug-tcg"
- - TEST_CMD="make -j${JOBS} check-tcg V=1"
+ - TEST_BUILD_CMD="make -j${JOBS} build-tcg"
+ - TEST_CMD="make check-tcg"
- CACHE_NAME="${TRAVIS_BRANCH}-linux-gcc-debug-tcg"
@@ -377,7 +385,8 @@ matrix:
- name: "GCC plugins check-tcg (user)"
env:
- CONFIG="--disable-system --enable-plugins --enable-debug-tcg --target-list-exclude=sparc64-linux-user"
- - TEST_CMD="make -j${JOBS} check-tcg V=1"
+ - TEST_BUILD_CMD="make -j${JOBS} build-tcg"
+ - TEST_CMD="make check-tcg"
- CACHE_NAME="${TRAVIS_BRANCH}-linux-gcc-debug-tcg"
@@ -385,7 +394,8 @@ matrix:
- name: "GCC check-tcg (some-softmmu)"
env:
- CONFIG="--enable-debug-tcg --target-list=xtensa-softmmu,arm-softmmu,aarch64-softmmu,alpha-softmmu"
- - TEST_CMD="make -j${JOBS} check-tcg V=1"
+ - TEST_BUILD_CMD="make -j${JOBS} build-tcg"
+ - TEST_CMD="make check-tcg"
- CACHE_NAME="${TRAVIS_BRANCH}-linux-gcc-debug-tcg"
@@ -393,7 +403,8 @@ matrix:
- name: "GCC plugins check-tcg (some-softmmu)"
env:
- CONFIG="--enable-plugins --enable-debug-tcg --target-list=xtensa-softmmu,arm-softmmu,aarch64-softmmu,alpha-softmmu"
- - TEST_CMD="make -j${JOBS} check-tcg V=1"
+ - TEST_BUILD_CMD="make -j${JOBS} build-tcg"
+ - TEST_CMD="make check-tcg"
- CACHE_NAME="${TRAVIS_BRANCH}-linux-gcc-debug-tcg"
- name: "[aarch64] GCC check-tcg"
--
2.20.1
^ permalink raw reply related [flat|nested] 18+ messages in thread
* [PULL 13/16] .travis.yml: drop the travis_retry from tests
2020-02-04 18:40 [PULL 00/16] testing updates Alex Bennée
` (11 preceding siblings ...)
2020-02-04 18:40 ` [PULL 12/16] .travis.yml: introduce TEST_BUILD_CMD and use it for check-tcg Alex Bennée
@ 2020-02-04 18:40 ` Alex Bennée
2020-02-04 18:40 ` [PULL 14/16] .travis.yml: drop cris-linux-user from the plugins test Alex Bennée
` (3 subsequent siblings)
16 siblings, 0 replies; 18+ messages in thread
From: Alex Bennée @ 2020-02-04 18:40 UTC (permalink / raw)
To: peter.maydell
Cc: Fam Zheng, Philippe Mathieu-Daudé, Alex Bennée, qemu-devel
This was a crutch when we introduced it - however it does have the
disadvantage of causing tests to timeout with large amounts of logs.
Lets drop it and see if the stability has improved since.
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Tested-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Message-Id: <20200203090932.19147-16-alex.bennee@linaro.org>
diff --git a/.travis.yml b/.travis.yml
index 022462f6981..875671325c8 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -103,7 +103,12 @@ script:
else
$(exit $BUILD_RC);
fi
- - if [ "$BUILD_RC" -eq 0 ] ; then travis_retry ${TEST_CMD} ; else $(exit $BUILD_RC); fi
+ - |
+ if [ "$BUILD_RC" -eq 0 ] ; then
+ ${TEST_CMD} ;
+ else
+ $(exit $BUILD_RC);
+ fi
after_script:
- if command -v ccache ; then ccache --show-stats ; fi
--
2.20.1
^ permalink raw reply related [flat|nested] 18+ messages in thread
* [PULL 14/16] .travis.yml: drop cris-linux-user from the plugins test
2020-02-04 18:40 [PULL 00/16] testing updates Alex Bennée
` (12 preceding siblings ...)
2020-02-04 18:40 ` [PULL 13/16] .travis.yml: drop the travis_retry from tests Alex Bennée
@ 2020-02-04 18:40 ` Alex Bennée
2020-02-04 18:40 ` [PULL 15/16] .travis.yml: single thread build-tcg Alex Bennée
` (2 subsequent siblings)
16 siblings, 0 replies; 18+ messages in thread
From: Alex Bennée @ 2020-02-04 18:40 UTC (permalink / raw)
To: peter.maydell
Cc: Fam Zheng, Philippe Mathieu-Daudé, Alex Bennée, qemu-devel
While it shouldn't cause problems we will never get useful information
from cris as it has yet to be converted to the common translator loop.
It also causes the Travis CI to fail for weird reasons which I have so
far been unable to replicate on a normal Xenial system.
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20200203090932.19147-17-alex.bennee@linaro.org>
diff --git a/.travis.yml b/.travis.yml
index 875671325c8..c1c6df475a8 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -387,9 +387,10 @@ matrix:
# Run check-tcg against linux-user (with plugins)
# we skip sparc64-linux-user until it has been fixed somewhat
+ # we skip cris-linux-user as it doesn't use the common run loop
- name: "GCC plugins check-tcg (user)"
env:
- - CONFIG="--disable-system --enable-plugins --enable-debug-tcg --target-list-exclude=sparc64-linux-user"
+ - CONFIG="--disable-system --enable-plugins --enable-debug-tcg --target-list-exclude=sparc64-linux-user,cris-linux-user"
- TEST_BUILD_CMD="make -j${JOBS} build-tcg"
- TEST_CMD="make check-tcg"
- CACHE_NAME="${TRAVIS_BRANCH}-linux-gcc-debug-tcg"
--
2.20.1
^ permalink raw reply related [flat|nested] 18+ messages in thread
* [PULL 15/16] .travis.yml: single thread build-tcg
2020-02-04 18:40 [PULL 00/16] testing updates Alex Bennée
` (13 preceding siblings ...)
2020-02-04 18:40 ` [PULL 14/16] .travis.yml: drop cris-linux-user from the plugins test Alex Bennée
@ 2020-02-04 18:40 ` Alex Bennée
2020-02-04 18:40 ` [PULL 16/16] .travis.yml: ensure python3-sphinx installed for docs Alex Bennée
2020-02-06 9:53 ` [PULL 00/16] testing updates Peter Maydell
16 siblings, 0 replies; 18+ messages in thread
From: Alex Bennée @ 2020-02-04 18:40 UTC (permalink / raw)
To: peter.maydell
Cc: Fam Zheng, Philippe Mathieu-Daudé, Alex Bennée, qemu-devel
I've theorised that a parallel build-tcg is somehow getting confused
when two fedora-30 based cross compilers attempt to build at the same
time. From one data-point so far this may fix the problem although the
plugins job runs quite close to timeout.
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20200203090932.19147-18-alex.bennee@linaro.org>
diff --git a/.travis.yml b/.travis.yml
index c1c6df475a8..3b35b7cf04d 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -380,7 +380,7 @@ matrix:
- name: "GCC check-tcg (user)"
env:
- CONFIG="--disable-system --enable-debug-tcg"
- - TEST_BUILD_CMD="make -j${JOBS} build-tcg"
+ - TEST_BUILD_CMD="make build-tcg"
- TEST_CMD="make check-tcg"
- CACHE_NAME="${TRAVIS_BRANCH}-linux-gcc-debug-tcg"
@@ -391,7 +391,7 @@ matrix:
- name: "GCC plugins check-tcg (user)"
env:
- CONFIG="--disable-system --enable-plugins --enable-debug-tcg --target-list-exclude=sparc64-linux-user,cris-linux-user"
- - TEST_BUILD_CMD="make -j${JOBS} build-tcg"
+ - TEST_BUILD_CMD="make build-tcg"
- TEST_CMD="make check-tcg"
- CACHE_NAME="${TRAVIS_BRANCH}-linux-gcc-debug-tcg"
--
2.20.1
^ permalink raw reply related [flat|nested] 18+ messages in thread
* [PULL 16/16] .travis.yml: ensure python3-sphinx installed for docs
2020-02-04 18:40 [PULL 00/16] testing updates Alex Bennée
` (14 preceding siblings ...)
2020-02-04 18:40 ` [PULL 15/16] .travis.yml: single thread build-tcg Alex Bennée
@ 2020-02-04 18:40 ` Alex Bennée
2020-02-06 9:53 ` [PULL 00/16] testing updates Peter Maydell
16 siblings, 0 replies; 18+ messages in thread
From: Alex Bennée @ 2020-02-04 18:40 UTC (permalink / raw)
To: peter.maydell
Cc: Fam Zheng, Philippe Mathieu-Daudé, Alex Bennée, qemu-devel
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Message-Id: <20200204105142.21845-1-alex.bennee@linaro.org>
diff --git a/.travis.yml b/.travis.yml
index 3b35b7cf04d..6c0ec6cf69f 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -194,7 +194,7 @@ matrix:
addons:
apt:
packages:
- - python-sphinx
+ - python3-sphinx
- texinfo
- perl
--
2.20.1
^ permalink raw reply related [flat|nested] 18+ messages in thread
* Re: [PULL 00/16] testing updates
2020-02-04 18:40 [PULL 00/16] testing updates Alex Bennée
` (15 preceding siblings ...)
2020-02-04 18:40 ` [PULL 16/16] .travis.yml: ensure python3-sphinx installed for docs Alex Bennée
@ 2020-02-06 9:53 ` Peter Maydell
16 siblings, 0 replies; 18+ messages in thread
From: Peter Maydell @ 2020-02-06 9:53 UTC (permalink / raw)
To: Alex Bennée; +Cc: QEMU Developers
On Tue, 4 Feb 2020 at 18:40, Alex Bennée <alex.bennee@linaro.org> wrote:
>
> The following changes since commit 7bd9d0a9e26c7a3c67c0f174f0009ba19969b158:
>
> Merge remote-tracking branch 'remotes/huth-gitlab/tags/pull-request-2020-02-04' into staging (2020-02-04 16:12:31 +0000)
>
> are available in the Git repository at:
>
> https://github.com/stsquad/qemu.git tags/pull-testing-040220-1
>
> for you to fetch changes up to 68e5b85e41fe7684e58cd077772b7d1e8bc092c7:
>
> .travis.yml: ensure python3-sphinx installed for docs (2020-02-04 17:13:29 +0000)
>
> ----------------------------------------------------------------
> Testing updates and build fixes:
>
> - move more cross compilers to buster
> - fix build breakage (hppa Kconfig)
> - disable docs on shippable
> - build docs under bionic with python3
> - travis.yml re-factoring
> - check capabilities of non-docker compilers
> - smarter make -j parallelism
Applied, thanks.
Please update the changelog at https://wiki.qemu.org/ChangeLog/5.0
for any user-visible changes.
-- PMM
^ permalink raw reply [flat|nested] 18+ messages in thread
end of thread, other threads:[~2020-02-06 9:54 UTC | newest]
Thread overview: 18+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-02-04 18:40 [PULL 00/16] testing updates Alex Bennée
2020-02-04 18:40 ` [PULL 01/16] tests/docker: move most cross compilers to buster base Alex Bennée
2020-02-04 18:40 ` [PULL 02/16] tests/docker: better handle symlinked libs Alex Bennée
2020-02-04 18:40 ` [PULL 03/16] travis.yml: Install genisoimage package Alex Bennée
2020-02-04 18:40 ` [PULL 04/16] .shippable: --disable-docs for cross-compile tests Alex Bennée
2020-02-04 18:40 ` [PULL 05/16] .travis.yml: Drop superfluous use of --python=python3 parameter Alex Bennée
2020-02-04 18:40 ` [PULL 06/16] .travis.yml: Add description to each job Alex Bennée
2020-02-04 18:40 ` [PULL 07/16] .travis.yml: build documents under bionic Alex Bennée
2020-02-04 18:40 ` [PULL 08/16] .travis.yml: move cache flushing to early common phase Alex Bennée
2020-02-04 18:40 ` [PULL 09/16] .travis.yml: probe for number of available processors Alex Bennée
2020-02-04 18:40 ` [PULL 10/16] tests/tcg: add a configure compiler check for ARMv8.1 and SVE Alex Bennée
2020-02-04 18:40 ` [PULL 11/16] tests/tcg: gate pauth-% tests on having compiler support Alex Bennée
2020-02-04 18:40 ` [PULL 12/16] .travis.yml: introduce TEST_BUILD_CMD and use it for check-tcg Alex Bennée
2020-02-04 18:40 ` [PULL 13/16] .travis.yml: drop the travis_retry from tests Alex Bennée
2020-02-04 18:40 ` [PULL 14/16] .travis.yml: drop cris-linux-user from the plugins test Alex Bennée
2020-02-04 18:40 ` [PULL 15/16] .travis.yml: single thread build-tcg Alex Bennée
2020-02-04 18:40 ` [PULL 16/16] .travis.yml: ensure python3-sphinx installed for docs Alex Bennée
2020-02-06 9:53 ` [PULL 00/16] testing updates Peter Maydell
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).