All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH  v3 00/17] testing/next (with build fixes, finally GREEN!)
@ 2020-02-03  9:09 Alex Bennée
  2020-02-03  9:09 ` [PATCH v3 01/17] tests/docker: move most cross compilers to buster base Alex Bennée
                   ` (16 more replies)
  0 siblings, 17 replies; 23+ messages in thread
From: Alex Bennée @ 2020-02-03  9:09 UTC (permalink / raw)
  To: qemu-devel
  Cc: fam, berrange, stefanb, Alex Bennée, richard.henderson,
	f4bug, cota, stefanha, marcandre.lureau, pbonzini, aurelien

Hi,

The main changes from v2 are dropping the travis_retry (the aarch64
timeout was simply taking too long on the same failing test) and
tweaks to the parallelism of the various bits of build.

The following patches need review
   03 - gitlab ci Refresh the list of iotests
   07 - .travis.yml Drop superfluous use of python python
   08 - .travis.yml Add description to each job
   13 - tests tcg gate pauth tests on having compiler sup
   14 - .travis.yml introduce TEST_BUILD_CMD and use it f
   15 - .travis.yml drop the travis_retry from tests
   16 - .travis.yml drop cris linux user from the plugins
   17 - .travis.yml single thread build tcg

Alex Bennée (12):
  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

Philippe Mathieu-Daudé (3):
  hw/hppa/Kconfig: LASI chipset requires PARALLEL port
  .travis.yml: Drop superfluous use of --python=python3 parameter
  .travis.yml: Add description to each job

Thomas Huth (1):
  gitlab-ci: Refresh the list of iotests

Wainer dos Santos Moschetta (1):
  travis.yml: Install genisoimage package

 .gitlab-ci.yml                                |  12 +-
 .shippable.yml                                |   2 +-
 .travis.yml                                   | 164 ++++++++++++------
 hw/hppa/Kconfig                               |   1 +
 tests/docker/Makefile.include                 |  16 +-
 tests/docker/docker.py                        |  16 +-
 tests/docker/dockerfiles/debian-amd64.docker  |   2 +-
 .../dockerfiles/debian-armel-cross.docker     |   2 +-
 .../dockerfiles/debian-armhf-cross.docker     |   2 +-
 .../dockerfiles/debian-mips64el-cross.docker  |   2 +-
 .../dockerfiles/debian-mipsel-cross.docker    |   2 +-
 .../dockerfiles/debian-ppc64el-cross.docker   |   2 +-
 .../dockerfiles/debian-s390x-cross.docker     |   2 +-
 tests/tcg/aarch64/Makefile.softmmu-target     |  12 +-
 tests/tcg/aarch64/Makefile.target             |   2 +
 tests/tcg/configure.sh                        |  18 ++
 16 files changed, 174 insertions(+), 83 deletions(-)

-- 
2.20.1



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

* [PATCH v3 01/17] tests/docker: move most cross compilers to buster base
  2020-02-03  9:09 [PATCH v3 00/17] testing/next (with build fixes, finally GREEN!) Alex Bennée
@ 2020-02-03  9:09 ` Alex Bennée
  2020-02-03  9:09 ` [PATCH v3 02/17] tests/docker: better handle symlinked libs Alex Bennée
                   ` (15 subsequent siblings)
  16 siblings, 0 replies; 23+ messages in thread
From: Alex Bennée @ 2020-02-03  9:09 UTC (permalink / raw)
  To: qemu-devel
  Cc: fam, berrange, stefanb, Alex Bennée, richard.henderson,
	f4bug, Philippe Mathieu-Daudé,
	cota, stefanha, marcandre.lureau, pbonzini, aurelien

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>
---
 tests/docker/Makefile.include                    | 16 ++++++++--------
 tests/docker/dockerfiles/debian-amd64.docker     |  2 +-
 .../docker/dockerfiles/debian-armel-cross.docker |  2 +-
 .../docker/dockerfiles/debian-armhf-cross.docker |  2 +-
 .../dockerfiles/debian-mips64el-cross.docker     |  2 +-
 .../dockerfiles/debian-mipsel-cross.docker       |  2 +-
 .../dockerfiles/debian-ppc64el-cross.docker      |  2 +-
 .../docker/dockerfiles/debian-s390x-cross.docker |  2 +-
 8 files changed, 15 insertions(+), 15 deletions(-)

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] 23+ messages in thread

* [PATCH  v3 02/17] tests/docker: better handle symlinked libs
  2020-02-03  9:09 [PATCH v3 00/17] testing/next (with build fixes, finally GREEN!) Alex Bennée
  2020-02-03  9:09 ` [PATCH v3 01/17] tests/docker: move most cross compilers to buster base Alex Bennée
@ 2020-02-03  9:09 ` Alex Bennée
  2020-02-03  9:09 ` [PATCH v3 03/17] gitlab-ci: Refresh the list of iotests Alex Bennée
                   ` (14 subsequent siblings)
  16 siblings, 0 replies; 23+ messages in thread
From: Alex Bennée @ 2020-02-03  9:09 UTC (permalink / raw)
  To: qemu-devel
  Cc: fam, berrange, stefanb, Alex Bennée, richard.henderson,
	f4bug, Philippe Mathieu-Daudé,
	cota, stefanha, marcandre.lureau, pbonzini, aurelien

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>

---
v3
  - fix comment
  - fix grouping extraction
  - try/except on IndexError
---
 tests/docker/docker.py | 16 +++++++++-------
 1 file changed, 9 insertions(+), 7 deletions(-)

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] 23+ messages in thread

* [PATCH  v3 03/17] gitlab-ci: Refresh the list of iotests
  2020-02-03  9:09 [PATCH v3 00/17] testing/next (with build fixes, finally GREEN!) Alex Bennée
  2020-02-03  9:09 ` [PATCH v3 01/17] tests/docker: move most cross compilers to buster base Alex Bennée
  2020-02-03  9:09 ` [PATCH v3 02/17] tests/docker: better handle symlinked libs Alex Bennée
@ 2020-02-03  9:09 ` Alex Bennée
  2020-02-03  9:09 ` [PATCH v3 04/17] travis.yml: Install genisoimage package Alex Bennée
                   ` (13 subsequent siblings)
  16 siblings, 0 replies; 23+ messages in thread
From: Alex Bennée @ 2020-02-03  9:09 UTC (permalink / raw)
  To: qemu-devel
  Cc: fam, Thomas Huth, berrange, stefanb, richard.henderson, f4bug,
	cota, stefanha, marcandre.lureau, pbonzini, aurelien

From: Thomas Huth <thuth@redhat.com>

iotest 147 and 205 have recently been marked as "NBD-only", so they
are currently simply skipped and thus can be removed.

iotest 129 occasionally fails in the gitlab-CI, and according to Max,
there are some known issues with this test (see for example this URL:
https://lists.nongnu.org/archive/html/qemu-block/2019-06/msg00499.html ),
so for the time being, let's disable it until the problems are fixed.

The iotests 040, 127, 203 and 256 are scheduled to become part of "make
check-block", so we also do not have to test them seperately here anymore.

On the other side, new iotests have been added to the QEMU repository
in the past months, so we can now add some new test > 256 instead.

Signed-off-by: Thomas Huth <thuth@redhat.com>
Message-Id: <20200121131936.8214-1-thuth@redhat.com>
---
 .gitlab-ci.yml | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 228783993e5..c15e394f09a 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -54,12 +54,12 @@ build-tcg-disabled:
  - make check-qapi-schema
  - cd tests/qemu-iotests/
  - ./check -raw 001 002 003 004 005 008 009 010 011 012 021 025 032 033 048
-            052 063 077 086 101 104 106 113 147 148 150 151 152 157 159 160
-            163 170 171 183 184 192 194 197 205 208 215 221 222 226 227 236
- - ./check -qcow2 028 040 051 056 057 058 065 067 068 082 085 091 095 096 102
-            122 124 127 129 132 139 142 144 145 147 151 152 155 157 165 194
-            196 197 200 202 203 205 208 209 215 216 218 222 227 234 246 247
-            248 250 254 255 256
+            052 063 077 086 101 104 106 113 148 150 151 152 157 159 160 163
+            170 171 183 184 192 194 197 208 215 221 222 226 227 236 253 277
+ - ./check -qcow2 028 051 056 057 058 065 067 068 082 085 091 095 096 102 122
+            124 132 139 142 144 145 151 152 155 157 165 194 196 197 200 202
+            208 209 215 216 218 222 227 234 246 247 248 250 254 255 257 258
+            260 261 262 263 264 270 272 273 277 279
 
 build-user:
  script:
-- 
2.20.1



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

* [PATCH  v3 04/17] travis.yml: Install genisoimage package
  2020-02-03  9:09 [PATCH v3 00/17] testing/next (with build fixes, finally GREEN!) Alex Bennée
                   ` (2 preceding siblings ...)
  2020-02-03  9:09 ` [PATCH v3 03/17] gitlab-ci: Refresh the list of iotests Alex Bennée
@ 2020-02-03  9:09 ` Alex Bennée
  2020-02-03  9:09 ` [PATCH v3 05/17] .shippable: --disable-docs for cross-compile tests Alex Bennée
                   ` (12 subsequent siblings)
  16 siblings, 0 replies; 23+ messages in thread
From: Alex Bennée @ 2020-02-03  9:09 UTC (permalink / raw)
  To: qemu-devel
  Cc: fam, Thomas Huth, berrange, stefanb, Philippe Mathieu-Daudé,
	richard.henderson, f4bug, Wainer dos Santos Moschetta,
	Alex Bennée, cota, stefanha, marcandre.lureau, pbonzini,
	aurelien

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>
Message-Id: <20200110191254.11303-2-wainersm@redhat.com>
---
 .travis.yml | 8 ++++++++
 1 file changed, 8 insertions(+)

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] 23+ messages in thread

* [PATCH  v3 05/17] .shippable: --disable-docs for cross-compile tests
  2020-02-03  9:09 [PATCH v3 00/17] testing/next (with build fixes, finally GREEN!) Alex Bennée
                   ` (3 preceding siblings ...)
  2020-02-03  9:09 ` [PATCH v3 04/17] travis.yml: Install genisoimage package Alex Bennée
@ 2020-02-03  9:09 ` Alex Bennée
  2020-02-03  9:09 ` [PATCH v3 06/17] hw/hppa/Kconfig: LASI chipset requires PARALLEL port Alex Bennée
                   ` (11 subsequent siblings)
  16 siblings, 0 replies; 23+ messages in thread
From: Alex Bennée @ 2020-02-03  9:09 UTC (permalink / raw)
  To: qemu-devel
  Cc: fam, berrange, stefanb, Alex Bennée, richard.henderson,
	f4bug, Philippe Mathieu-Daudé,
	cota, stefanha, marcandre.lureau, pbonzini, aurelien

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>
---
 .shippable.yml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

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] 23+ messages in thread

* [PATCH v3 06/17] hw/hppa/Kconfig: LASI chipset requires PARALLEL port
  2020-02-03  9:09 [PATCH v3 00/17] testing/next (with build fixes, finally GREEN!) Alex Bennée
                   ` (4 preceding siblings ...)
  2020-02-03  9:09 ` [PATCH v3 05/17] .shippable: --disable-docs for cross-compile tests Alex Bennée
@ 2020-02-03  9:09 ` Alex Bennée
  2020-02-03  9:09 ` [PATCH v3 07/17] .travis.yml: Drop superfluous use of --python=python3 parameter Alex Bennée
                   ` (10 subsequent siblings)
  16 siblings, 0 replies; 23+ messages in thread
From: Alex Bennée @ 2020-02-03  9:09 UTC (permalink / raw)
  To: qemu-devel
  Cc: fam, berrange, stefanb, Philippe Mathieu-Daudé,
	Helge Deller, richard.henderson, f4bug, Alex Bennée, cota,
	stefanha, marcandre.lureau, pbonzini, aurelien,
	Richard Henderson

From: Philippe Mathieu-Daudé <philmd@redhat.com>

The PARISC Lasi chipset emulation requires some of the common parallel
support and fails to build on a --without-default-devices:

    LINK    hppa-softmmu/qemu-system-hppa
  /usr/bin/ld: hw/hppa/lasi.o: in function `lasi_init':
  hw/hppa/lasi.c:324: undefined reference to `parallel_mm_init'
  collect2: error: ld returned 1 exit status
  make[1]: *** [Makefile:206: qemu-system-hppa] Error 1

Fixes: 376b851909d
Reported-by: Alex Bennée <alex.bennee@linaro.org>
Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Acked-by: Helge Deller <deller@gmx.de>
Message-Id: <20200129192350.27143-1-philmd@redhat.com>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
---
 hw/hppa/Kconfig | 1 +
 1 file changed, 1 insertion(+)

diff --git a/hw/hppa/Kconfig b/hw/hppa/Kconfig
index 82178c7dcb7..22948db0256 100644
--- a/hw/hppa/Kconfig
+++ b/hw/hppa/Kconfig
@@ -12,4 +12,5 @@ config DINO
     select LSI_SCSI_PCI
     select LASI_82596
     select LASIPS2
+    select PARALLEL
     select ARTIST
-- 
2.20.1



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

* [PATCH v3 07/17] .travis.yml: Drop superfluous use of --python=python3 parameter
  2020-02-03  9:09 [PATCH v3 00/17] testing/next (with build fixes, finally GREEN!) Alex Bennée
                   ` (5 preceding siblings ...)
  2020-02-03  9:09 ` [PATCH v3 06/17] hw/hppa/Kconfig: LASI chipset requires PARALLEL port Alex Bennée
@ 2020-02-03  9:09 ` Alex Bennée
  2020-02-03  9:09 ` [PATCH v3 08/17] .travis.yml: Add description to each job Alex Bennée
                   ` (9 subsequent siblings)
  16 siblings, 0 replies; 23+ messages in thread
From: Alex Bennée @ 2020-02-03  9:09 UTC (permalink / raw)
  To: qemu-devel
  Cc: fam, Thomas Huth, berrange, stefanb, Alex Bennée,
	richard.henderson, f4bug, Philippe Mathieu-Daudé,
	cota, stefanha, marcandre.lureau, pbonzini, aurelien

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>
Message-Id: <20200125184217.30034-1-f4bug@amsat.org>
---
 .travis.yml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

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] 23+ messages in thread

* [PATCH  v3 08/17] .travis.yml: Add description to each job
  2020-02-03  9:09 [PATCH v3 00/17] testing/next (with build fixes, finally GREEN!) Alex Bennée
                   ` (6 preceding siblings ...)
  2020-02-03  9:09 ` [PATCH v3 07/17] .travis.yml: Drop superfluous use of --python=python3 parameter Alex Bennée
@ 2020-02-03  9:09 ` Alex Bennée
  2020-02-03  9:09 ` [PATCH v3 09/17] .travis.yml: build documents under bionic Alex Bennée
                   ` (8 subsequent siblings)
  16 siblings, 0 replies; 23+ messages in thread
From: Alex Bennée @ 2020-02-03  9:09 UTC (permalink / raw)
  To: qemu-devel
  Cc: fam, berrange, stefanb, Alex Bennée, richard.henderson,
	f4bug, Philippe Mathieu-Daudé,
	cota, stefanha, marcandre.lureau, pbonzini, aurelien

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>
Message-Id: <20200125183135.28317-1-f4bug@amsat.org>

---
[ajb]
  - drop [x86]
---
 .travis.yml | 101 ++++++++++++++++++++++++++++++++++------------------
 1 file changed, 67 insertions(+), 34 deletions(-)

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] 23+ messages in thread

* [PATCH  v3 09/17] .travis.yml: build documents under bionic
  2020-02-03  9:09 [PATCH v3 00/17] testing/next (with build fixes, finally GREEN!) Alex Bennée
                   ` (7 preceding siblings ...)
  2020-02-03  9:09 ` [PATCH v3 08/17] .travis.yml: Add description to each job Alex Bennée
@ 2020-02-03  9:09 ` Alex Bennée
  2020-02-03  9:09 ` [PATCH v3 10/17] .travis.yml: move cache flushing to early common phase Alex Bennée
                   ` (7 subsequent siblings)
  16 siblings, 0 replies; 23+ messages in thread
From: Alex Bennée @ 2020-02-03  9:09 UTC (permalink / raw)
  To: qemu-devel
  Cc: fam, berrange, stefanb, Alex Bennée, richard.henderson,
	f4bug, Philippe Mathieu-Daudé,
	cota, stefanha, marcandre.lureau, pbonzini, aurelien

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>
---
 .travis.yml | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

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] 23+ messages in thread

* [PATCH v3 10/17] .travis.yml: move cache flushing to early common phase
  2020-02-03  9:09 [PATCH v3 00/17] testing/next (with build fixes, finally GREEN!) Alex Bennée
                   ` (8 preceding siblings ...)
  2020-02-03  9:09 ` [PATCH v3 09/17] .travis.yml: build documents under bionic Alex Bennée
@ 2020-02-03  9:09 ` Alex Bennée
  2020-02-03  9:09 ` [PATCH v3 11/17] .travis.yml: probe for number of available processors Alex Bennée
                   ` (6 subsequent siblings)
  16 siblings, 0 replies; 23+ messages in thread
From: Alex Bennée @ 2020-02-03  9:09 UTC (permalink / raw)
  To: qemu-devel
  Cc: fam, berrange, stefanb, Alex Bennée, richard.henderson,
	f4bug, Philippe Mathieu-Daudé,
	cota, stefanha, marcandre.lureau, pbonzini, aurelien

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>
---
 .travis.yml | 11 ++++++-----
 1 file changed, 6 insertions(+), 5 deletions(-)

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] 23+ messages in thread

* [PATCH v3 11/17] .travis.yml: probe for number of available processors
  2020-02-03  9:09 [PATCH v3 00/17] testing/next (with build fixes, finally GREEN!) Alex Bennée
                   ` (9 preceding siblings ...)
  2020-02-03  9:09 ` [PATCH v3 10/17] .travis.yml: move cache flushing to early common phase Alex Bennée
@ 2020-02-03  9:09 ` Alex Bennée
  2020-02-03  9:09 ` [PATCH v3 12/17] tests/tcg: add a configure compiler check for ARMv8.1 and SVE Alex Bennée
                   ` (5 subsequent siblings)
  16 siblings, 0 replies; 23+ messages in thread
From: Alex Bennée @ 2020-02-03  9:09 UTC (permalink / raw)
  To: qemu-devel
  Cc: fam, Thomas Huth, berrange, stefanb, Alex Bennée,
	richard.henderson, f4bug, Philippe Mathieu-Daudé,
	cota, stefanha, marcandre.lureau, pbonzini, aurelien

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>
---
 .travis.yml | 20 +++++++++++---------
 1 file changed, 11 insertions(+), 9 deletions(-)

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] 23+ messages in thread

* [PATCH v3 12/17] tests/tcg: add a configure compiler check for ARMv8.1 and SVE
  2020-02-03  9:09 [PATCH v3 00/17] testing/next (with build fixes, finally GREEN!) Alex Bennée
                   ` (10 preceding siblings ...)
  2020-02-03  9:09 ` [PATCH v3 11/17] .travis.yml: probe for number of available processors Alex Bennée
@ 2020-02-03  9:09 ` Alex Bennée
  2020-02-03  9:09 ` [PATCH v3 13/17] tests/tcg: gate pauth-% tests on having compiler support Alex Bennée
                   ` (4 subsequent siblings)
  16 siblings, 0 replies; 23+ messages in thread
From: Alex Bennée @ 2020-02-03  9:09 UTC (permalink / raw)
  To: qemu-devel
  Cc: fam, berrange, stefanb, Alex Bennée, richard.henderson,
	f4bug, cota, stefanha, marcandre.lureau, pbonzini, aurelien

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>
---
 tests/tcg/configure.sh | 14 ++++++++++++++
 1 file changed, 14 insertions(+)

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] 23+ messages in thread

* [PATCH v3 13/17] tests/tcg: gate pauth-% tests on having compiler support
  2020-02-03  9:09 [PATCH v3 00/17] testing/next (with build fixes, finally GREEN!) Alex Bennée
                   ` (11 preceding siblings ...)
  2020-02-03  9:09 ` [PATCH v3 12/17] tests/tcg: add a configure compiler check for ARMv8.1 and SVE Alex Bennée
@ 2020-02-03  9:09 ` Alex Bennée
  2020-02-03  9:09 ` [PATCH v3 14/17] .travis.yml: introduce TEST_BUILD_CMD and use it for check-tcg Alex Bennée
                   ` (3 subsequent siblings)
  16 siblings, 0 replies; 23+ messages in thread
From: Alex Bennée @ 2020-02-03  9:09 UTC (permalink / raw)
  To: qemu-devel
  Cc: fam, Peter Maydell, berrange, stefanb, Alex Bennée,
	richard.henderson, f4bug, cota, stefanha, marcandre.lureau,
	pbonzini, open list:ARM TCG CPUs, aurelien

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>
---
 tests/tcg/aarch64/Makefile.softmmu-target | 12 +++++++++---
 tests/tcg/aarch64/Makefile.target         |  2 ++
 tests/tcg/configure.sh                    |  4 ++++
 3 files changed, 15 insertions(+), 3 deletions(-)

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] 23+ messages in thread

* [PATCH v3 14/17] .travis.yml: introduce TEST_BUILD_CMD and use it for check-tcg
  2020-02-03  9:09 [PATCH v3 00/17] testing/next (with build fixes, finally GREEN!) Alex Bennée
                   ` (12 preceding siblings ...)
  2020-02-03  9:09 ` [PATCH v3 13/17] tests/tcg: gate pauth-% tests on having compiler support Alex Bennée
@ 2020-02-03  9:09 ` Alex Bennée
  2020-02-03 15:00   ` Philippe Mathieu-Daudé
  2020-02-03  9:09 ` [PATCH v3 15/17] .travis.yml: drop the travis_retry from tests Alex Bennée
                   ` (2 subsequent siblings)
  16 siblings, 1 reply; 23+ messages in thread
From: Alex Bennée @ 2020-02-03  9:09 UTC (permalink / raw)
  To: qemu-devel
  Cc: fam, berrange, stefanb, Alex Bennée, richard.henderson,
	f4bug, Philippe Mathieu-Daudé,
	cota, stefanha, marcandre.lureau, pbonzini, aurelien

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>
---
 .travis.yml | 19 +++++++++++++++----
 1 file changed, 15 insertions(+), 4 deletions(-)

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] 23+ messages in thread

* [PATCH  v3 15/17] .travis.yml: drop the travis_retry from tests
  2020-02-03  9:09 [PATCH v3 00/17] testing/next (with build fixes, finally GREEN!) Alex Bennée
                   ` (13 preceding siblings ...)
  2020-02-03  9:09 ` [PATCH v3 14/17] .travis.yml: introduce TEST_BUILD_CMD and use it for check-tcg Alex Bennée
@ 2020-02-03  9:09 ` Alex Bennée
  2020-02-03 14:58   ` Philippe Mathieu-Daudé
  2020-02-03  9:09 ` [PATCH v3 16/17] .travis.yml: drop cris-linux-user from the plugins test Alex Bennée
  2020-02-03  9:09 ` [PATCH v3 17/17] .travis.yml: single thread build-tcg Alex Bennée
  16 siblings, 1 reply; 23+ messages in thread
From: Alex Bennée @ 2020-02-03  9:09 UTC (permalink / raw)
  To: qemu-devel
  Cc: fam, berrange, stefanb, Alex Bennée, richard.henderson,
	f4bug, Philippe Mathieu-Daudé,
	cota, stefanha, marcandre.lureau, pbonzini, aurelien

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>
---
 .travis.yml | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

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] 23+ messages in thread

* [PATCH v3 16/17] .travis.yml: drop cris-linux-user from the plugins test
  2020-02-03  9:09 [PATCH v3 00/17] testing/next (with build fixes, finally GREEN!) Alex Bennée
                   ` (14 preceding siblings ...)
  2020-02-03  9:09 ` [PATCH v3 15/17] .travis.yml: drop the travis_retry from tests Alex Bennée
@ 2020-02-03  9:09 ` Alex Bennée
  2020-02-03  9:09 ` [PATCH v3 17/17] .travis.yml: single thread build-tcg Alex Bennée
  16 siblings, 0 replies; 23+ messages in thread
From: Alex Bennée @ 2020-02-03  9:09 UTC (permalink / raw)
  To: qemu-devel
  Cc: fam, berrange, stefanb, Alex Bennée, richard.henderson,
	f4bug, Philippe Mathieu-Daudé,
	cota, stefanha, marcandre.lureau, pbonzini, aurelien

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>
---
 .travis.yml | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

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] 23+ messages in thread

* [PATCH  v3 17/17] .travis.yml: single thread build-tcg
  2020-02-03  9:09 [PATCH v3 00/17] testing/next (with build fixes, finally GREEN!) Alex Bennée
                   ` (15 preceding siblings ...)
  2020-02-03  9:09 ` [PATCH v3 16/17] .travis.yml: drop cris-linux-user from the plugins test Alex Bennée
@ 2020-02-03  9:09 ` Alex Bennée
  2020-02-03 10:01   ` Thomas Huth
  16 siblings, 1 reply; 23+ messages in thread
From: Alex Bennée @ 2020-02-03  9:09 UTC (permalink / raw)
  To: qemu-devel
  Cc: fam, berrange, stefanb, Alex Bennée, richard.henderson,
	f4bug, Philippe Mathieu-Daudé,
	cota, stefanha, marcandre.lureau, pbonzini, aurelien

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>
---
 .travis.yml | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

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] 23+ messages in thread

* Re: [PATCH v3 17/17] .travis.yml: single thread build-tcg
  2020-02-03  9:09 ` [PATCH v3 17/17] .travis.yml: single thread build-tcg Alex Bennée
@ 2020-02-03 10:01   ` Thomas Huth
  2020-02-03 11:35     ` Philippe Mathieu-Daudé
  0 siblings, 1 reply; 23+ messages in thread
From: Thomas Huth @ 2020-02-03 10:01 UTC (permalink / raw)
  To: Alex Bennée, qemu-devel
  Cc: fam, berrange, stefanb, richard.henderson, f4bug, cota, stefanha,
	pbonzini, marcandre.lureau, Philippe Mathieu-Daudé,
	aurelien

On 03/02/2020 10.09, Alex Bennée wrote:
> 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>
> ---
>  .travis.yml | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> 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"

Squash it into patch 14/17 ?

 Thomas



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

* Re: [PATCH v3 17/17] .travis.yml: single thread build-tcg
  2020-02-03 10:01   ` Thomas Huth
@ 2020-02-03 11:35     ` Philippe Mathieu-Daudé
  2020-02-03 14:37       ` Alex Bennée
  0 siblings, 1 reply; 23+ messages in thread
From: Philippe Mathieu-Daudé @ 2020-02-03 11:35 UTC (permalink / raw)
  To: Thomas Huth, Alex Bennée, qemu-devel
  Cc: fam, berrange, stefanb, richard.henderson, f4bug, cota, stefanha,
	pbonzini, marcandre.lureau, aurelien

On 2/3/20 11:01 AM, Thomas Huth wrote:
> On 03/02/2020 10.09, Alex Bennée wrote:
>> 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>
>> ---
>>   .travis.yml | 4 ++--
>>   1 file changed, 2 insertions(+), 2 deletions(-)
>>
>> 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"
> 
> Squash it into patch 14/17 ?

I'd rather not, ideally we will revert this patch once the issue is fixed.



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

* Re: [PATCH v3 17/17] .travis.yml: single thread build-tcg
  2020-02-03 11:35     ` Philippe Mathieu-Daudé
@ 2020-02-03 14:37       ` Alex Bennée
  0 siblings, 0 replies; 23+ messages in thread
From: Alex Bennée @ 2020-02-03 14:37 UTC (permalink / raw)
  To: Philippe Mathieu-Daudé
  Cc: fam, Thomas Huth, berrange, stefanb, richard.henderson,
	qemu-devel, f4bug, cota, stefanha, pbonzini, marcandre.lureau,
	aurelien


Philippe Mathieu-Daudé <philmd@redhat.com> writes:

> On 2/3/20 11:01 AM, Thomas Huth wrote:
>> On 03/02/2020 10.09, Alex Bennée wrote:
>>> 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>
>>> ---
>>>   .travis.yml | 4 ++--
>>>   1 file changed, 2 insertions(+), 2 deletions(-)
>>>
>>> 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"
>> Squash it into patch 14/17 ?
>
> I'd rather not, ideally we will revert this patch once the issue is
> fixed.

Yeah - there should be no reason that we can't build all the tcg tests
in parallel. For some reason I think the two fedora30 based images have
an issue, despite there not being a common base.

-- 
Alex Bennée


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

* Re: [PATCH v3 15/17] .travis.yml: drop the travis_retry from tests
  2020-02-03  9:09 ` [PATCH v3 15/17] .travis.yml: drop the travis_retry from tests Alex Bennée
@ 2020-02-03 14:58   ` Philippe Mathieu-Daudé
  0 siblings, 0 replies; 23+ messages in thread
From: Philippe Mathieu-Daudé @ 2020-02-03 14:58 UTC (permalink / raw)
  To: Alex Bennée, qemu-devel
  Cc: fam, berrange, stefanb, richard.henderson, f4bug, cota, stefanha,
	marcandre.lureau, pbonzini, aurelien

On 2/3/20 10:09 AM, Alex Bennée wrote:
> 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>
> ---
>   .travis.yml | 7 ++++++-
>   1 file changed, 6 insertions(+), 1 deletion(-)
> 
> 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
>   
> 

Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Tested-by: Philippe Mathieu-Daudé <philmd@redhat.com>



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

* Re: [PATCH v3 14/17] .travis.yml: introduce TEST_BUILD_CMD and use it for check-tcg
  2020-02-03  9:09 ` [PATCH v3 14/17] .travis.yml: introduce TEST_BUILD_CMD and use it for check-tcg Alex Bennée
@ 2020-02-03 15:00   ` Philippe Mathieu-Daudé
  0 siblings, 0 replies; 23+ messages in thread
From: Philippe Mathieu-Daudé @ 2020-02-03 15:00 UTC (permalink / raw)
  To: Alex Bennée, qemu-devel
  Cc: fam, berrange, stefanb, richard.henderson, f4bug, cota, stefanha,
	marcandre.lureau, pbonzini, aurelien

On 2/3/20 10:09 AM, Alex Bennée wrote:
> 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>
> ---
>   .travis.yml | 19 +++++++++++++++----
>   1 file changed, 15 insertions(+), 4 deletions(-)
> 
> 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"

Good, I had some similar patch, but this one is simpler.

Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Tested-by: Philippe Mathieu-Daudé <philmd@redhat.com>

>           - 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"
> 



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

end of thread, other threads:[~2020-02-03 15:02 UTC | newest]

Thread overview: 23+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-02-03  9:09 [PATCH v3 00/17] testing/next (with build fixes, finally GREEN!) Alex Bennée
2020-02-03  9:09 ` [PATCH v3 01/17] tests/docker: move most cross compilers to buster base Alex Bennée
2020-02-03  9:09 ` [PATCH v3 02/17] tests/docker: better handle symlinked libs Alex Bennée
2020-02-03  9:09 ` [PATCH v3 03/17] gitlab-ci: Refresh the list of iotests Alex Bennée
2020-02-03  9:09 ` [PATCH v3 04/17] travis.yml: Install genisoimage package Alex Bennée
2020-02-03  9:09 ` [PATCH v3 05/17] .shippable: --disable-docs for cross-compile tests Alex Bennée
2020-02-03  9:09 ` [PATCH v3 06/17] hw/hppa/Kconfig: LASI chipset requires PARALLEL port Alex Bennée
2020-02-03  9:09 ` [PATCH v3 07/17] .travis.yml: Drop superfluous use of --python=python3 parameter Alex Bennée
2020-02-03  9:09 ` [PATCH v3 08/17] .travis.yml: Add description to each job Alex Bennée
2020-02-03  9:09 ` [PATCH v3 09/17] .travis.yml: build documents under bionic Alex Bennée
2020-02-03  9:09 ` [PATCH v3 10/17] .travis.yml: move cache flushing to early common phase Alex Bennée
2020-02-03  9:09 ` [PATCH v3 11/17] .travis.yml: probe for number of available processors Alex Bennée
2020-02-03  9:09 ` [PATCH v3 12/17] tests/tcg: add a configure compiler check for ARMv8.1 and SVE Alex Bennée
2020-02-03  9:09 ` [PATCH v3 13/17] tests/tcg: gate pauth-% tests on having compiler support Alex Bennée
2020-02-03  9:09 ` [PATCH v3 14/17] .travis.yml: introduce TEST_BUILD_CMD and use it for check-tcg Alex Bennée
2020-02-03 15:00   ` Philippe Mathieu-Daudé
2020-02-03  9:09 ` [PATCH v3 15/17] .travis.yml: drop the travis_retry from tests Alex Bennée
2020-02-03 14:58   ` Philippe Mathieu-Daudé
2020-02-03  9:09 ` [PATCH v3 16/17] .travis.yml: drop cris-linux-user from the plugins test Alex Bennée
2020-02-03  9:09 ` [PATCH v3 17/17] .travis.yml: single thread build-tcg Alex Bennée
2020-02-03 10:01   ` Thomas Huth
2020-02-03 11:35     ` Philippe Mathieu-Daudé
2020-02-03 14:37       ` Alex Bennée

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.