All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2 0/5] Move remaining x86 Travis jobs to the gitlab-CI
@ 2021-02-05  9:18 Thomas Huth
  2021-02-05  9:18 ` [PATCH v2 1/5] travis.yml: Move gprof/gcov test across to gitlab Thomas Huth
                   ` (5 more replies)
  0 siblings, 6 replies; 16+ messages in thread
From: Thomas Huth @ 2021-02-05  9:18 UTC (permalink / raw)
  To: qemu-devel, Alex Bennée
  Cc: Philippe Mathieu-Daudé,
	Willian Rampazzo, Wainer dos Santos Moschetta

Since Travis changed their policies, travis-ci.org will soon become
completely useless for the QEMU project. We should now really make sure
that we move the remaining tests as good as possible to the gitlab-CI
instead.

v2:
 - Run "make check" in the gprof/gcov test
 - Make sure that we run at least one test with --enable-debug
 - Reworked the thread sanitizer patch to use --enable-tsan + clang now

Philippe Mathieu-Daudé (1):
  travis.yml: Move gprof/gcov test across to gitlab

Thomas Huth (4):
  travis.yml: Move the -fsanitize=undefined test to the gitlab-CI
  travis.yml: Move the --enable-modules test to the gitlab-CI
  travis.yml: (Re-)move the --enable-debug jobs
  travis.yml: Move the -fsanitize=thread testing to the gitlab-CI

 .gitlab-ci.yml                             |  38 ++++++-
 .travis.yml                                | 111 ---------------------
 MAINTAINERS                                |   2 +-
 scripts/{travis => ci}/coverage-summary.sh |   2 +-
 tests/docker/dockerfiles/ubuntu2004.docker |   2 +
 5 files changed, 39 insertions(+), 116 deletions(-)
 rename scripts/{travis => ci}/coverage-summary.sh (92%)

-- 
2.27.0



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

* [PATCH v2 1/5] travis.yml: Move gprof/gcov test across to gitlab
  2021-02-05  9:18 [PATCH v2 0/5] Move remaining x86 Travis jobs to the gitlab-CI Thomas Huth
@ 2021-02-05  9:18 ` Thomas Huth
  2021-02-05 13:37   ` Wainer dos Santos Moschetta
  2021-02-05 16:58   ` Alex Bennée
  2021-02-05  9:18 ` [PATCH v2 2/5] travis.yml: Move the -fsanitize=undefined test to the gitlab-CI Thomas Huth
                   ` (4 subsequent siblings)
  5 siblings, 2 replies; 16+ messages in thread
From: Thomas Huth @ 2021-02-05  9:18 UTC (permalink / raw)
  To: qemu-devel, Alex Bennée
  Cc: Philippe Mathieu-Daudé,
	Willian Rampazzo, Wainer dos Santos Moschetta

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

Similarly to commit 8cdb2cef3f1, move the gprof/gcov test to GitLab.

The coverage-summary.sh script is not Travis-CI specific, make it
generic.

Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Message-Id: <20201108204535.2319870-10-philmd@redhat.com>
[thuth: Add gcovr and bsdmainutils which are required for the
        coverage-summary.sh script to the ubuntu docker file,
        and use 'check' as test target]
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
 .gitlab-ci.yml                             | 12 ++++++++++++
 .travis.yml                                | 15 ---------------
 MAINTAINERS                                |  2 +-
 scripts/{travis => ci}/coverage-summary.sh |  2 +-
 tests/docker/dockerfiles/ubuntu2004.docker |  2 ++
 5 files changed, 16 insertions(+), 17 deletions(-)
 rename scripts/{travis => ci}/coverage-summary.sh (92%)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 7c0db64710..1070efce3f 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -468,6 +468,18 @@ check-deprecated:
     MAKE_CHECK_ARGS: check-tcg
   allow_failure: true
 
+# gprof/gcov are GCC features
+gprof-gcov:
+  <<: *native_build_job_definition
+  variables:
+    IMAGE: ubuntu2004
+    CONFIGURE_ARGS: --enable-gprof --enable-gcov
+    MAKE_CHECK_ARGS: check
+    TARGETS: aarch64-softmmu mips64-softmmu ppc64-softmmu
+             riscv64-softmmu s390x-softmmu x86_64-softmmu
+  after_script:
+    - ${CI_PROJECT_DIR}/scripts/ci/coverage-summary.sh
+
 build-oss-fuzz:
   <<: *native_build_job_definition
   variables:
diff --git a/.travis.yml b/.travis.yml
index 5f1dea873e..05fa1ca905 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -52,7 +52,6 @@ addons:
       - ninja-build
       - sparse
       - uuid-dev
-      - gcovr
       # Tests dependencies
       - genisoimage
 
@@ -166,20 +165,6 @@ jobs:
       compiler: clang
 
 
-    # gprof/gcov are GCC features
-    - name: "GCC gprof/gcov"
-      dist: bionic
-      addons:
-        apt:
-          packages:
-            - ninja-build
-      env:
-        - CONFIG="--enable-gprof --enable-gcov --disable-libssh
-                  --target-list=${MAIN_SOFTMMU_TARGETS}"
-      after_success:
-        - ${SRC_DIR}/scripts/travis/coverage-summary.sh
-
-
     # Using newer GCC with sanitizers
     - name: "GCC9 with sanitizers (softmmu)"
       dist: bionic
diff --git a/MAINTAINERS b/MAINTAINERS
index 00626941f1..472e54f786 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -3203,7 +3203,7 @@ R: Philippe Mathieu-Daudé <philmd@redhat.com>
 S: Maintained
 F: .github/lockdown.yml
 F: .travis.yml
-F: scripts/travis/
+F: scripts/ci/
 F: .shippable.yml
 F: tests/docker/
 F: tests/vm/
diff --git a/scripts/travis/coverage-summary.sh b/scripts/ci/coverage-summary.sh
similarity index 92%
rename from scripts/travis/coverage-summary.sh
rename to scripts/ci/coverage-summary.sh
index d7086cf9ca..8d9fb4de40 100755
--- a/scripts/travis/coverage-summary.sh
+++ b/scripts/ci/coverage-summary.sh
@@ -3,7 +3,7 @@
 # Author: Alex Bennée <alex.bennee@linaro.org>
 #
 # Summerise the state of code coverage with gcovr and tweak the output
-# to be more sane on Travis hosts. As we expect to be executed on a
+# to be more sane on CI runner. As we expect to be executed on a
 # throw away CI instance we do spam temp files all over the shop. You
 # most likely don't want to execute this script but just call gcovr
 # directly. See also "make coverage-report"
diff --git a/tests/docker/dockerfiles/ubuntu2004.docker b/tests/docker/dockerfiles/ubuntu2004.docker
index 8519584d2b..9750016e51 100644
--- a/tests/docker/dockerfiles/ubuntu2004.docker
+++ b/tests/docker/dockerfiles/ubuntu2004.docker
@@ -1,8 +1,10 @@
 FROM ubuntu:20.04
 ENV PACKAGES flex bison \
+    bsdmainutils \
     ccache \
     clang-10\
     gcc \
+    gcovr \
     genisoimage \
     gettext \
     git \
-- 
2.27.0



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

* [PATCH v2 2/5] travis.yml: Move the -fsanitize=undefined test to the gitlab-CI
  2021-02-05  9:18 [PATCH v2 0/5] Move remaining x86 Travis jobs to the gitlab-CI Thomas Huth
  2021-02-05  9:18 ` [PATCH v2 1/5] travis.yml: Move gprof/gcov test across to gitlab Thomas Huth
@ 2021-02-05  9:18 ` Thomas Huth
  2021-02-05 16:59   ` Alex Bennée
  2021-02-05  9:18 ` [PATCH v2 3/5] travis.yml: Move the --enable-modules " Thomas Huth
                   ` (3 subsequent siblings)
  5 siblings, 1 reply; 16+ messages in thread
From: Thomas Huth @ 2021-02-05  9:18 UTC (permalink / raw)
  To: qemu-devel, Alex Bennée
  Cc: Philippe Mathieu-Daudé,
	Willian Rampazzo, Wainer dos Santos Moschetta

Add it to the existing Clang job and also add a job that covers the
linux-user code with this compiler flag. To make sure that the detected
problems are not simply ignored, let's also use "-fno-sanitize-recover=..."
now instead.

Signed-off-by: Thomas Huth <thuth@redhat.com>
---
 .gitlab-ci.yml | 14 ++++++++++++--
 .travis.yml    | 27 ---------------------------
 2 files changed, 12 insertions(+), 29 deletions(-)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 1070efce3f..1419eb4825 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -433,13 +433,23 @@ build-some-softmmu-plugins:
     TARGETS: xtensa-softmmu arm-softmmu aarch64-softmmu alpha-softmmu
     MAKE_CHECK_ARGS: check-tcg
 
-build-clang:
+clang-system:
   <<: *native_build_job_definition
   variables:
     IMAGE: fedora
     CONFIGURE_ARGS: --cc=clang --cxx=clang++
+      --extra-cflags=-fno-sanitize-recover=undefined
     TARGETS: alpha-softmmu arm-softmmu m68k-softmmu mips64-softmmu
-      ppc-softmmu s390x-softmmu arm-linux-user
+      ppc-softmmu s390x-softmmu
+    MAKE_CHECK_ARGS: check-qtest check-block check-tcg
+
+clang-user:
+  <<: *native_build_job_definition
+  variables:
+    IMAGE: fedora
+    CONFIGURE_ARGS: --cc=clang --cxx=clang++ --disable-system
+      --target-list-exclude=microblazeel-linux-user,aarch64-linux-user,armeb-linux-user,x86_64-linux-user,mipsn32el-linux-user,xtensa-linux-user
+      --extra-cflags=-fno-sanitize-recover=undefined
     MAKE_CHECK_ARGS: check
 
 # These targets are on the way out
diff --git a/.travis.yml b/.travis.yml
index 05fa1ca905..533a60c130 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -138,33 +138,6 @@ jobs:
         - CACHE_NAME="${TRAVIS_BRANCH}-linux-gcc-default"
 
 
-    # Test with Clang for compile portability (Travis uses clang-5.0)
-    - name: "Clang (user)"
-      env:
-        - CONFIG="--disable-system --host-cc=clang --cxx=clang++"
-        - CACHE_NAME="${TRAVIS_BRANCH}-linux-clang-default"
-      compiler: clang
-
-
-    - name: "Clang (main-softmmu)"
-      env:
-        - CONFIG="--target-list=${MAIN_SOFTMMU_TARGETS}
-                  --host-cc=clang --cxx=clang++"
-        - CACHE_NAME="${TRAVIS_BRANCH}-linux-clang-sanitize"
-      compiler: clang
-      before_script:
-        - mkdir -p ${BUILD_DIR} && cd ${BUILD_DIR}
-        - ${SRC_DIR}/configure ${CONFIG} --extra-cflags="-fsanitize=undefined -Werror" || { cat config.log meson-logs/meson-log.txt && exit 1; }
-
-
-    - name: "Clang (other-softmmu)"
-      env:
-        - CONFIG="--disable-user --target-list-exclude=${MAIN_SOFTMMU_TARGETS}
-                  --host-cc=clang --cxx=clang++"
-        - CACHE_NAME="${TRAVIS_BRANCH}-linux-clang-default"
-      compiler: clang
-
-
     # Using newer GCC with sanitizers
     - name: "GCC9 with sanitizers (softmmu)"
       dist: bionic
-- 
2.27.0



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

* [PATCH v2 3/5] travis.yml: Move the --enable-modules test to the gitlab-CI
  2021-02-05  9:18 [PATCH v2 0/5] Move remaining x86 Travis jobs to the gitlab-CI Thomas Huth
  2021-02-05  9:18 ` [PATCH v2 1/5] travis.yml: Move gprof/gcov test across to gitlab Thomas Huth
  2021-02-05  9:18 ` [PATCH v2 2/5] travis.yml: Move the -fsanitize=undefined test to the gitlab-CI Thomas Huth
@ 2021-02-05  9:18 ` Thomas Huth
  2021-02-05 17:02   ` Alex Bennée
  2021-02-05  9:18 ` [PATCH v2 4/5] travis.yml: (Re-)move the --enable-debug jobs Thomas Huth
                   ` (2 subsequent siblings)
  5 siblings, 1 reply; 16+ messages in thread
From: Thomas Huth @ 2021-02-05  9:18 UTC (permalink / raw)
  To: qemu-devel, Alex Bennée
  Cc: Philippe Mathieu-Daudé,
	Willian Rampazzo, Wainer dos Santos Moschetta

Simply add the flag to an existing job, no need for yet another
job here.

Reviewed-by: Wainer dos Santos Moschetta <wainersm@redhat.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
 .gitlab-ci.yml | 1 +
 .travis.yml    | 6 ------
 2 files changed, 1 insertion(+), 6 deletions(-)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 1419eb4825..94c22ced7b 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -223,6 +223,7 @@ build-system-centos:
   variables:
     IMAGE: centos8
     CONFIGURE_ARGS: --disable-nettle --enable-gcrypt --enable-fdt=system
+                    --enable-modules
     TARGETS: ppc64-softmmu or1k-softmmu s390x-softmmu
       x86_64-softmmu rx-softmmu sh4-softmmu nios2-softmmu
     MAKE_CHECK_ARGS: check-build
diff --git a/.travis.yml b/.travis.yml
index 533a60c130..7744ec3a2f 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -131,12 +131,6 @@ jobs:
         - CONFIG="--enable-debug-tcg --disable-system"
         - CACHE_NAME="${TRAVIS_BRANCH}-linux-gcc-debug-tcg"
 
-    # Module builds are mostly of interest to major distros
-    - name: "GCC modules (main-softmmu)"
-      env:
-        - CONFIG="--enable-modules --target-list=${MAIN_SOFTMMU_TARGETS}"
-        - CACHE_NAME="${TRAVIS_BRANCH}-linux-gcc-default"
-
 
     # Using newer GCC with sanitizers
     - name: "GCC9 with sanitizers (softmmu)"
-- 
2.27.0



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

* [PATCH v2 4/5] travis.yml: (Re-)move the --enable-debug jobs
  2021-02-05  9:18 [PATCH v2 0/5] Move remaining x86 Travis jobs to the gitlab-CI Thomas Huth
                   ` (2 preceding siblings ...)
  2021-02-05  9:18 ` [PATCH v2 3/5] travis.yml: Move the --enable-modules " Thomas Huth
@ 2021-02-05  9:18 ` Thomas Huth
  2021-02-05 13:36   ` Wainer dos Santos Moschetta
  2021-02-05 17:03   ` Alex Bennée
  2021-02-05  9:18 ` [PATCH v2 5/5] travis.yml: Move the -fsanitize=thread testing to the gitlab-CI Thomas Huth
  2021-02-09 20:37 ` [PATCH v2 0/5] Move remaining x86 Travis jobs " Alex Bennée
  5 siblings, 2 replies; 16+ messages in thread
From: Thomas Huth @ 2021-02-05  9:18 UTC (permalink / raw)
  To: qemu-devel, Alex Bennée
  Cc: Philippe Mathieu-Daudé,
	Willian Rampazzo, Wainer dos Santos Moschetta

We already have similar jobs in the gitlab-CI ("build-some-softmmu" and
"build-user-plugins"), so let's switch one of them to use --enable-debug
instead of --enable-debug-tcg, then we can simply drop these jobs from
the Travis-CI.

Signed-off-by: Thomas Huth <thuth@redhat.com>
---
 .gitlab-ci.yml |  2 +-
 .travis.yml    | 12 ------------
 2 files changed, 1 insertion(+), 13 deletions(-)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 94c22ced7b..5926ec02a7 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -404,7 +404,7 @@ build-some-softmmu:
   <<: *native_build_job_definition
   variables:
     IMAGE: debian-all-test-cross
-    CONFIGURE_ARGS: --disable-tools --enable-debug-tcg
+    CONFIGURE_ARGS: --disable-tools --enable-debug
     TARGETS: xtensa-softmmu arm-softmmu aarch64-softmmu alpha-softmmu
     MAKE_CHECK_ARGS: check-tcg
 
diff --git a/.travis.yml b/.travis.yml
index 7744ec3a2f..f0e2b1059c 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -118,18 +118,6 @@ after_script:
 
 jobs:
   include:
-    # --enable-debug implies --enable-debug-tcg, also runs quite a bit slower
-    - 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
-    - name: "GCC debug (user)"
-      env:
-        - CONFIG="--enable-debug-tcg --disable-system"
-        - CACHE_NAME="${TRAVIS_BRANCH}-linux-gcc-debug-tcg"
 
 
     # Using newer GCC with sanitizers
-- 
2.27.0



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

* [PATCH v2 5/5] travis.yml: Move the -fsanitize=thread testing to the gitlab-CI
  2021-02-05  9:18 [PATCH v2 0/5] Move remaining x86 Travis jobs to the gitlab-CI Thomas Huth
                   ` (3 preceding siblings ...)
  2021-02-05  9:18 ` [PATCH v2 4/5] travis.yml: (Re-)move the --enable-debug jobs Thomas Huth
@ 2021-02-05  9:18 ` Thomas Huth
  2021-02-05 17:47   ` Alex Bennée
  2021-02-09 20:37 ` [PATCH v2 0/5] Move remaining x86 Travis jobs " Alex Bennée
  5 siblings, 1 reply; 16+ messages in thread
From: Thomas Huth @ 2021-02-05  9:18 UTC (permalink / raw)
  To: qemu-devel, Alex Bennée
  Cc: Philippe Mathieu-Daudé,
	Willian Rampazzo, Wainer dos Santos Moschetta

Use clang-10, so we can also use the --enable-tsan configure
option instead of only passing the flag via --extra-cflags.

Signed-off-by: Thomas Huth <thuth@redhat.com>
---
 .gitlab-ci.yml |  9 +++++++++
 .travis.yml    | 51 --------------------------------------------------
 2 files changed, 9 insertions(+), 51 deletions(-)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 5926ec02a7..7a5c450dc9 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -453,6 +453,15 @@ clang-user:
       --extra-cflags=-fno-sanitize-recover=undefined
     MAKE_CHECK_ARGS: check
 
+tsan-build:
+  <<: *native_build_job_definition
+  variables:
+    IMAGE: ubuntu2004
+    CONFIGURE_ARGS: --enable-tsan --cc=clang-10 --cxx=clang++-10 --disable-docs
+                    --enable-fdt=system --enable-slirp=system
+    TARGETS: x86_64-softmmu ppc64-softmmu riscv64-softmmu x86_64-linux-user
+    MAKE_CHECK_ARGS: bench V=1
+
 # These targets are on the way out
 build-deprecated:
   <<: *native_build_job_definition
diff --git a/.travis.yml b/.travis.yml
index f0e2b1059c..0a4f38b9d8 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -119,57 +119,6 @@ after_script:
 jobs:
   include:
 
-
-    # Using newer GCC with sanitizers
-    - name: "GCC9 with sanitizers (softmmu)"
-      dist: bionic
-      addons:
-        apt:
-          update: true
-          sources:
-            # PPAs for newer toolchains
-            - ubuntu-toolchain-r-test
-          packages:
-            # Extra toolchains
-            - gcc-9
-            - g++-9
-            # Build dependencies
-            - libaio-dev
-            - libattr1-dev
-            - libbrlapi-dev
-            - libcap-ng-dev
-            - libgnutls28-dev
-            - libgtk-3-dev
-            - libiscsi-dev
-            - liblttng-ust-dev
-            - libnfs-dev
-            - libncurses5-dev
-            - libnss3-dev
-            - libpixman-1-dev
-            - libpng-dev
-            - librados-dev
-            - libsdl2-dev
-            - libsdl2-image-dev
-            - libseccomp-dev
-            - libspice-protocol-dev
-            - libspice-server-dev
-            - liburcu-dev
-            - libusb-1.0-0-dev
-            - libvte-2.91-dev
-            - ninja-build
-            - sparse
-            - uuid-dev
-      language: generic
-      compiler: none
-      env:
-        - COMPILER_NAME=gcc CXX=g++-9 CC=gcc-9
-        - CONFIG="--cc=gcc-9 --cxx=g++-9 --disable-linux-user"
-        - TEST_CMD=""
-      before_script:
-        - mkdir -p ${BUILD_DIR} && cd ${BUILD_DIR}
-        - ${SRC_DIR}/configure ${CONFIG} --extra-cflags="-g3 -O0 -fsanitize=thread" || { cat config.log meson-logs/meson-log.txt && exit 1; }
-
-
     - name: "[aarch64] GCC check-tcg"
       arch: arm64
       dist: focal
-- 
2.27.0



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

* Re: [PATCH v2 4/5] travis.yml: (Re-)move the --enable-debug jobs
  2021-02-05  9:18 ` [PATCH v2 4/5] travis.yml: (Re-)move the --enable-debug jobs Thomas Huth
@ 2021-02-05 13:36   ` Wainer dos Santos Moschetta
  2021-02-05 17:03   ` Alex Bennée
  1 sibling, 0 replies; 16+ messages in thread
From: Wainer dos Santos Moschetta @ 2021-02-05 13:36 UTC (permalink / raw)
  To: Thomas Huth, qemu-devel, Alex Bennée
  Cc: Philippe Mathieu-Daudé, Willian Rampazzo


On 2/5/21 6:18 AM, Thomas Huth wrote:
> We already have similar jobs in the gitlab-CI ("build-some-softmmu" and
> "build-user-plugins"), so let's switch one of them to use --enable-debug
> instead of --enable-debug-tcg, then we can simply drop these jobs from
> the Travis-CI.
>
> Signed-off-by: Thomas Huth <thuth@redhat.com>
> ---
>   .gitlab-ci.yml |  2 +-
>   .travis.yml    | 12 ------------
>   2 files changed, 1 insertion(+), 13 deletions(-)

Reviewed-by: Wainer dos Santos Moschetta <wainersm@redhat.com>


>
> diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
> index 94c22ced7b..5926ec02a7 100644
> --- a/.gitlab-ci.yml
> +++ b/.gitlab-ci.yml
> @@ -404,7 +404,7 @@ build-some-softmmu:
>     <<: *native_build_job_definition
>     variables:
>       IMAGE: debian-all-test-cross
> -    CONFIGURE_ARGS: --disable-tools --enable-debug-tcg
> +    CONFIGURE_ARGS: --disable-tools --enable-debug
>       TARGETS: xtensa-softmmu arm-softmmu aarch64-softmmu alpha-softmmu
>       MAKE_CHECK_ARGS: check-tcg
>   
> diff --git a/.travis.yml b/.travis.yml
> index 7744ec3a2f..f0e2b1059c 100644
> --- a/.travis.yml
> +++ b/.travis.yml
> @@ -118,18 +118,6 @@ after_script:
>   
>   jobs:
>     include:
> -    # --enable-debug implies --enable-debug-tcg, also runs quite a bit slower
> -    - 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
> -    - name: "GCC debug (user)"
> -      env:
> -        - CONFIG="--enable-debug-tcg --disable-system"
> -        - CACHE_NAME="${TRAVIS_BRANCH}-linux-gcc-debug-tcg"
>   
>   
>       # Using newer GCC with sanitizers



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

* Re: [PATCH v2 1/5] travis.yml: Move gprof/gcov test across to gitlab
  2021-02-05  9:18 ` [PATCH v2 1/5] travis.yml: Move gprof/gcov test across to gitlab Thomas Huth
@ 2021-02-05 13:37   ` Wainer dos Santos Moschetta
  2021-02-05 16:58   ` Alex Bennée
  1 sibling, 0 replies; 16+ messages in thread
From: Wainer dos Santos Moschetta @ 2021-02-05 13:37 UTC (permalink / raw)
  To: Thomas Huth, qemu-devel, Alex Bennée
  Cc: Philippe Mathieu-Daudé, Willian Rampazzo


On 2/5/21 6:18 AM, Thomas Huth wrote:
> From: Philippe Mathieu-Daudé <philmd@redhat.com>
>
> Similarly to commit 8cdb2cef3f1, move the gprof/gcov test to GitLab.
>
> The coverage-summary.sh script is not Travis-CI specific, make it
> generic.
>
> Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
> Message-Id: <20201108204535.2319870-10-philmd@redhat.com>
> [thuth: Add gcovr and bsdmainutils which are required for the
>          coverage-summary.sh script to the ubuntu docker file,
>          and use 'check' as test target]
> Signed-off-by: Thomas Huth <thuth@redhat.com>
> ---
>   .gitlab-ci.yml                             | 12 ++++++++++++
>   .travis.yml                                | 15 ---------------
>   MAINTAINERS                                |  2 +-
>   scripts/{travis => ci}/coverage-summary.sh |  2 +-
>   tests/docker/dockerfiles/ubuntu2004.docker |  2 ++
>   5 files changed, 16 insertions(+), 17 deletions(-)
>   rename scripts/{travis => ci}/coverage-summary.sh (92%)

Reviewed-by: Wainer dos Santos Moschetta <wainersm@redhat.com>


>
> diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
> index 7c0db64710..1070efce3f 100644
> --- a/.gitlab-ci.yml
> +++ b/.gitlab-ci.yml
> @@ -468,6 +468,18 @@ check-deprecated:
>       MAKE_CHECK_ARGS: check-tcg
>     allow_failure: true
>   
> +# gprof/gcov are GCC features
> +gprof-gcov:
> +  <<: *native_build_job_definition
> +  variables:
> +    IMAGE: ubuntu2004
> +    CONFIGURE_ARGS: --enable-gprof --enable-gcov
> +    MAKE_CHECK_ARGS: check
> +    TARGETS: aarch64-softmmu mips64-softmmu ppc64-softmmu
> +             riscv64-softmmu s390x-softmmu x86_64-softmmu
> +  after_script:
> +    - ${CI_PROJECT_DIR}/scripts/ci/coverage-summary.sh
> +
>   build-oss-fuzz:
>     <<: *native_build_job_definition
>     variables:
> diff --git a/.travis.yml b/.travis.yml
> index 5f1dea873e..05fa1ca905 100644
> --- a/.travis.yml
> +++ b/.travis.yml
> @@ -52,7 +52,6 @@ addons:
>         - ninja-build
>         - sparse
>         - uuid-dev
> -      - gcovr
>         # Tests dependencies
>         - genisoimage
>   
> @@ -166,20 +165,6 @@ jobs:
>         compiler: clang
>   
>   
> -    # gprof/gcov are GCC features
> -    - name: "GCC gprof/gcov"
> -      dist: bionic
> -      addons:
> -        apt:
> -          packages:
> -            - ninja-build
> -      env:
> -        - CONFIG="--enable-gprof --enable-gcov --disable-libssh
> -                  --target-list=${MAIN_SOFTMMU_TARGETS}"
> -      after_success:
> -        - ${SRC_DIR}/scripts/travis/coverage-summary.sh
> -
> -
>       # Using newer GCC with sanitizers
>       - name: "GCC9 with sanitizers (softmmu)"
>         dist: bionic
> diff --git a/MAINTAINERS b/MAINTAINERS
> index 00626941f1..472e54f786 100644
> --- a/MAINTAINERS
> +++ b/MAINTAINERS
> @@ -3203,7 +3203,7 @@ R: Philippe Mathieu-Daudé <philmd@redhat.com>
>   S: Maintained
>   F: .github/lockdown.yml
>   F: .travis.yml
> -F: scripts/travis/
> +F: scripts/ci/
>   F: .shippable.yml
>   F: tests/docker/
>   F: tests/vm/
> diff --git a/scripts/travis/coverage-summary.sh b/scripts/ci/coverage-summary.sh
> similarity index 92%
> rename from scripts/travis/coverage-summary.sh
> rename to scripts/ci/coverage-summary.sh
> index d7086cf9ca..8d9fb4de40 100755
> --- a/scripts/travis/coverage-summary.sh
> +++ b/scripts/ci/coverage-summary.sh
> @@ -3,7 +3,7 @@
>   # Author: Alex Bennée <alex.bennee@linaro.org>
>   #
>   # Summerise the state of code coverage with gcovr and tweak the output
> -# to be more sane on Travis hosts. As we expect to be executed on a
> +# to be more sane on CI runner. As we expect to be executed on a
>   # throw away CI instance we do spam temp files all over the shop. You
>   # most likely don't want to execute this script but just call gcovr
>   # directly. See also "make coverage-report"
> diff --git a/tests/docker/dockerfiles/ubuntu2004.docker b/tests/docker/dockerfiles/ubuntu2004.docker
> index 8519584d2b..9750016e51 100644
> --- a/tests/docker/dockerfiles/ubuntu2004.docker
> +++ b/tests/docker/dockerfiles/ubuntu2004.docker
> @@ -1,8 +1,10 @@
>   FROM ubuntu:20.04
>   ENV PACKAGES flex bison \
> +    bsdmainutils \
>       ccache \
>       clang-10\
>       gcc \
> +    gcovr \
>       genisoimage \
>       gettext \
>       git \



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

* Re: [PATCH v2 1/5] travis.yml: Move gprof/gcov test across to gitlab
  2021-02-05  9:18 ` [PATCH v2 1/5] travis.yml: Move gprof/gcov test across to gitlab Thomas Huth
  2021-02-05 13:37   ` Wainer dos Santos Moschetta
@ 2021-02-05 16:58   ` Alex Bennée
  1 sibling, 0 replies; 16+ messages in thread
From: Alex Bennée @ 2021-02-05 16:58 UTC (permalink / raw)
  To: Thomas Huth
  Cc: Willian Rampazzo, Philippe Mathieu-Daudé,
	qemu-devel, Wainer dos Santos Moschetta


Thomas Huth <thuth@redhat.com> writes:

> From: Philippe Mathieu-Daudé <philmd@redhat.com>
>
> Similarly to commit 8cdb2cef3f1, move the gprof/gcov test to GitLab.
>
> The coverage-summary.sh script is not Travis-CI specific, make it
> generic.
>
> Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
> Message-Id: <20201108204535.2319870-10-philmd@redhat.com>
> [thuth: Add gcovr and bsdmainutils which are required for the
>         coverage-summary.sh script to the ubuntu docker file,
>         and use 'check' as test target]
> Signed-off-by: Thomas Huth <thuth@redhat.com>

It looks like coverage-html needs fixing but lets not hold things up for
that:

Reviewed-by: Alex Bennée <alex.bennee@linaro.org>

-- 
Alex Bennée


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

* Re: [PATCH v2 2/5] travis.yml: Move the -fsanitize=undefined test to the gitlab-CI
  2021-02-05  9:18 ` [PATCH v2 2/5] travis.yml: Move the -fsanitize=undefined test to the gitlab-CI Thomas Huth
@ 2021-02-05 16:59   ` Alex Bennée
  0 siblings, 0 replies; 16+ messages in thread
From: Alex Bennée @ 2021-02-05 16:59 UTC (permalink / raw)
  To: Thomas Huth
  Cc: Willian Rampazzo, Philippe Mathieu-Daudé,
	qemu-devel, Wainer dos Santos Moschetta


Thomas Huth <thuth@redhat.com> writes:

> Add it to the existing Clang job and also add a job that covers the
> linux-user code with this compiler flag. To make sure that the detected
> problems are not simply ignored, let's also use "-fno-sanitize-recover=..."
> now instead.
>
> Signed-off-by: Thomas Huth <thuth@redhat.com>
> ---
>  .gitlab-ci.yml | 14 ++++++++++++--
>  .travis.yml    | 27 ---------------------------
>  2 files changed, 12 insertions(+), 29 deletions(-)
>
> diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
> index 1070efce3f..1419eb4825 100644
> --- a/.gitlab-ci.yml
> +++ b/.gitlab-ci.yml
> @@ -433,13 +433,23 @@ build-some-softmmu-plugins:
>      TARGETS: xtensa-softmmu arm-softmmu aarch64-softmmu alpha-softmmu
>      MAKE_CHECK_ARGS: check-tcg
>  
> -build-clang:
> +clang-system:
>    <<: *native_build_job_definition
>    variables:
>      IMAGE: fedora
>      CONFIGURE_ARGS: --cc=clang --cxx=clang++
> +      --extra-cflags=-fno-sanitize-recover=undefined
>      TARGETS: alpha-softmmu arm-softmmu m68k-softmmu mips64-softmmu
> -      ppc-softmmu s390x-softmmu arm-linux-user
> +      ppc-softmmu s390x-softmmu
> +    MAKE_CHECK_ARGS: check-qtest check-block check-tcg
> +
> +clang-user:
> +  <<: *native_build_job_definition
> +  variables:
> +    IMAGE: fedora
> +    CONFIGURE_ARGS: --cc=clang --cxx=clang++ --disable-system
> +      --target-list-exclude=microblazeel-linux-user,aarch64-linux-user,armeb-linux-user,x86_64-linux-user,mipsn32el-linux-user,xtensa-linux-user
> +      --extra-cflags=-fno-sanitize-recover=undefined
>      MAKE_CHECK_ARGS: check

Interesting choice of things to skip. I don't think we'll get much
coverage though as check-tcg is about the only thing that exercises
linux-user to any degree and you'll want to include arches the build
system can build binaries for (arguably we should also update check-tcg
to build for ^endian variants of the main targets).

>  
>  # These targets are on the way out
> diff --git a/.travis.yml b/.travis.yml
> index 05fa1ca905..533a60c130 100644
> --- a/.travis.yml
> +++ b/.travis.yml
> @@ -138,33 +138,6 @@ jobs:
>          - CACHE_NAME="${TRAVIS_BRANCH}-linux-gcc-default"
>  
>  
> -    # Test with Clang for compile portability (Travis uses clang-5.0)
> -    - name: "Clang (user)"
> -      env:
> -        - CONFIG="--disable-system --host-cc=clang --cxx=clang++"
> -        - CACHE_NAME="${TRAVIS_BRANCH}-linux-clang-default"
> -      compiler: clang
> -
> -
> -    - name: "Clang (main-softmmu)"
> -      env:
> -        - CONFIG="--target-list=${MAIN_SOFTMMU_TARGETS}
> -                  --host-cc=clang --cxx=clang++"
> -        - CACHE_NAME="${TRAVIS_BRANCH}-linux-clang-sanitize"
> -      compiler: clang
> -      before_script:
> -        - mkdir -p ${BUILD_DIR} && cd ${BUILD_DIR}
> -        - ${SRC_DIR}/configure ${CONFIG} --extra-cflags="-fsanitize=undefined -Werror" || { cat config.log meson-logs/meson-log.txt && exit 1; }
> -
> -
> -    - name: "Clang (other-softmmu)"
> -      env:
> -        - CONFIG="--disable-user --target-list-exclude=${MAIN_SOFTMMU_TARGETS}
> -                  --host-cc=clang --cxx=clang++"
> -        - CACHE_NAME="${TRAVIS_BRANCH}-linux-clang-default"
> -      compiler: clang
> -
> -
>      # Using newer GCC with sanitizers
>      - name: "GCC9 with sanitizers (softmmu)"
>        dist: bionic


-- 
Alex Bennée


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

* Re: [PATCH v2 3/5] travis.yml: Move the --enable-modules test to the gitlab-CI
  2021-02-05  9:18 ` [PATCH v2 3/5] travis.yml: Move the --enable-modules " Thomas Huth
@ 2021-02-05 17:02   ` Alex Bennée
  0 siblings, 0 replies; 16+ messages in thread
From: Alex Bennée @ 2021-02-05 17:02 UTC (permalink / raw)
  To: Thomas Huth
  Cc: Willian Rampazzo, Philippe Mathieu-Daudé,
	qemu-devel, Wainer dos Santos Moschetta


Thomas Huth <thuth@redhat.com> writes:

> Simply add the flag to an existing job, no need for yet another
> job here.
>
> Reviewed-by: Wainer dos Santos Moschetta <wainersm@redhat.com>
> Signed-off-by: Thomas Huth <thuth@redhat.com>

Reviewed-by: Alex Bennée <alex.bennee@linaro.org>

-- 
Alex Bennée


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

* Re: [PATCH v2 4/5] travis.yml: (Re-)move the --enable-debug jobs
  2021-02-05  9:18 ` [PATCH v2 4/5] travis.yml: (Re-)move the --enable-debug jobs Thomas Huth
  2021-02-05 13:36   ` Wainer dos Santos Moschetta
@ 2021-02-05 17:03   ` Alex Bennée
  1 sibling, 0 replies; 16+ messages in thread
From: Alex Bennée @ 2021-02-05 17:03 UTC (permalink / raw)
  To: Thomas Huth
  Cc: Willian Rampazzo, Philippe Mathieu-Daudé,
	qemu-devel, Wainer dos Santos Moschetta


Thomas Huth <thuth@redhat.com> writes:

> We already have similar jobs in the gitlab-CI ("build-some-softmmu" and
> "build-user-plugins"), so let's switch one of them to use --enable-debug
> instead of --enable-debug-tcg, then we can simply drop these jobs from
> the Travis-CI.
>
> Signed-off-by: Thomas Huth <thuth@redhat.com>

Reviewed-by: Alex Bennée <alex.bennee@linaro.org>

-- 
Alex Bennée


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

* Re: [PATCH v2 5/5] travis.yml: Move the -fsanitize=thread testing to the gitlab-CI
  2021-02-05  9:18 ` [PATCH v2 5/5] travis.yml: Move the -fsanitize=thread testing to the gitlab-CI Thomas Huth
@ 2021-02-05 17:47   ` Alex Bennée
  0 siblings, 0 replies; 16+ messages in thread
From: Alex Bennée @ 2021-02-05 17:47 UTC (permalink / raw)
  To: Thomas Huth
  Cc: Willian Rampazzo, Philippe Mathieu-Daudé,
	qemu-devel, Wainer dos Santos Moschetta


Thomas Huth <thuth@redhat.com> writes:

> Use clang-10, so we can also use the --enable-tsan configure
> option instead of only passing the flag via --extra-cflags.
>
> Signed-off-by: Thomas Huth <thuth@redhat.com>

Reviewed-by: Alex Bennée <alex.bennee@linaro.org>

-- 
Alex Bennée


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

* Re: [PATCH v2 0/5] Move remaining x86 Travis jobs to the gitlab-CI
  2021-02-05  9:18 [PATCH v2 0/5] Move remaining x86 Travis jobs to the gitlab-CI Thomas Huth
                   ` (4 preceding siblings ...)
  2021-02-05  9:18 ` [PATCH v2 5/5] travis.yml: Move the -fsanitize=thread testing to the gitlab-CI Thomas Huth
@ 2021-02-09 20:37 ` Alex Bennée
  2021-02-10  5:44   ` Thomas Huth
  5 siblings, 1 reply; 16+ messages in thread
From: Alex Bennée @ 2021-02-09 20:37 UTC (permalink / raw)
  To: Thomas Huth
  Cc: Willian Rampazzo, Philippe Mathieu-Daudé,
	qemu-devel, Wainer dos Santos Moschetta


Thomas Huth <thuth@redhat.com> writes:

> Since Travis changed their policies, travis-ci.org will soon become
> completely useless for the QEMU project. We should now really make sure
> that we move the remaining tests as good as possible to the gitlab-CI
> instead.

Queued to testing/next, thanks.

-- 
Alex Bennée


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

* Re: [PATCH v2 0/5] Move remaining x86 Travis jobs to the gitlab-CI
  2021-02-09 20:37 ` [PATCH v2 0/5] Move remaining x86 Travis jobs " Alex Bennée
@ 2021-02-10  5:44   ` Thomas Huth
  2021-02-10  7:17     ` Alex Bennée
  0 siblings, 1 reply; 16+ messages in thread
From: Thomas Huth @ 2021-02-10  5:44 UTC (permalink / raw)
  To: Alex Bennée
  Cc: Willian Rampazzo, Philippe Mathieu-Daudé,
	qemu-devel, Wainer dos Santos Moschetta

On 09/02/2021 21.37, Alex Bennée wrote:
> 
> Thomas Huth <thuth@redhat.com> writes:
> 
>> Since Travis changed their policies, travis-ci.org will soon become
>> completely useless for the QEMU project. We should now really make sure
>> that we move the remaining tests as good as possible to the gitlab-CI
>> instead.
> 
> Queued to testing/next, thanks.

Thanks, but please unqueue them again, I still want to send a v3 to address 
your comment on the -fsanitize=undefined patch... and I also noticed that 
the gprof/gcov job runs very long and sometimes hits the 1h time limit, so I 
need to revisit the set of target architectures there...

  Thomas



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

* Re: [PATCH v2 0/5] Move remaining x86 Travis jobs to the gitlab-CI
  2021-02-10  5:44   ` Thomas Huth
@ 2021-02-10  7:17     ` Alex Bennée
  0 siblings, 0 replies; 16+ messages in thread
From: Alex Bennée @ 2021-02-10  7:17 UTC (permalink / raw)
  To: Thomas Huth
  Cc: Willian Rampazzo, Philippe Mathieu-Daudé,
	QEMU Developers, Wainer dos Santos Moschetta

[-- Attachment #1: Type: text/plain, Size: 790 bytes --]

Will do.

On Wed, 10 Feb 2021, 05:44 Thomas Huth, <thuth@redhat.com> wrote:

> On 09/02/2021 21.37, Alex Bennée wrote:
> >
> > Thomas Huth <thuth@redhat.com> writes:
> >
> >> Since Travis changed their policies, travis-ci.org will soon become
> >> completely useless for the QEMU project. We should now really make sure
> >> that we move the remaining tests as good as possible to the gitlab-CI
> >> instead.
> >
> > Queued to testing/next, thanks.
>
> Thanks, but please unqueue them again, I still want to send a v3 to
> address
> your comment on the -fsanitize=undefined patch... and I also noticed that
> the gprof/gcov job runs very long and sometimes hits the 1h time limit, so
> I
> need to revisit the set of target architectures there...
>
>   Thomas
>
>

[-- Attachment #2: Type: text/html, Size: 1278 bytes --]

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

end of thread, other threads:[~2021-02-10  7:19 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-02-05  9:18 [PATCH v2 0/5] Move remaining x86 Travis jobs to the gitlab-CI Thomas Huth
2021-02-05  9:18 ` [PATCH v2 1/5] travis.yml: Move gprof/gcov test across to gitlab Thomas Huth
2021-02-05 13:37   ` Wainer dos Santos Moschetta
2021-02-05 16:58   ` Alex Bennée
2021-02-05  9:18 ` [PATCH v2 2/5] travis.yml: Move the -fsanitize=undefined test to the gitlab-CI Thomas Huth
2021-02-05 16:59   ` Alex Bennée
2021-02-05  9:18 ` [PATCH v2 3/5] travis.yml: Move the --enable-modules " Thomas Huth
2021-02-05 17:02   ` Alex Bennée
2021-02-05  9:18 ` [PATCH v2 4/5] travis.yml: (Re-)move the --enable-debug jobs Thomas Huth
2021-02-05 13:36   ` Wainer dos Santos Moschetta
2021-02-05 17:03   ` Alex Bennée
2021-02-05  9:18 ` [PATCH v2 5/5] travis.yml: Move the -fsanitize=thread testing to the gitlab-CI Thomas Huth
2021-02-05 17:47   ` Alex Bennée
2021-02-09 20:37 ` [PATCH v2 0/5] Move remaining x86 Travis jobs " Alex Bennée
2021-02-10  5:44   ` Thomas Huth
2021-02-10  7:17     ` 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.