From d62dd8b0cb7f74ec43fac6f59c42178f4cf08c54 Mon Sep 17 00:00:00 2001 From: Tomeu Vizoso Date: Fri, 13 Dec 2019 10:20:23 +0100 Subject: gitlab-ci: Switch LAVA jobs to use shared dEQP runner Take one step towards sharing code between the LAVA and non-LAVA jobs, with the goals of reducing maintenance burden and use of computational resources. The env var DEQP_NO_SAVE_RESULTS allows us to skip the procesing of the XML result files, which can take a long time and is not useful in the LAVA case as we are not uploading artifacts anywhere at the moment. Signed-off-by: Tomeu Vizoso Reviewed-by: Eric Anholt --- .gitlab-ci/build-cts-runner.sh | 4 +- .gitlab-ci/build-deqp-gl.sh | 3 +- .gitlab-ci/container/lava_arm.sh | 89 ++++++--------------------------- .gitlab-ci/deqp-panfrost-t720-fails.txt | 64 ++++++++++++------------ .gitlab-ci/deqp-panfrost-t720-skips.txt | 6 +-- .gitlab-ci/deqp-panfrost-t760-fails.txt | 64 ++++++++++++------------ .gitlab-ci/deqp-panfrost-t760-skips.txt | 6 +-- .gitlab-ci/deqp-panfrost-t820-fails.txt | 64 ++++++++++++------------ .gitlab-ci/deqp-panfrost-t820-skips.txt | 6 +-- .gitlab-ci/deqp-panfrost-t860-fails.txt | 64 ++++++++++++------------ .gitlab-ci/deqp-panfrost-t860-skips.txt | 6 +-- .gitlab-ci/deqp-runner.sh | 31 +++++++----- .gitlab-ci/generate_lava.py | 3 ++ .gitlab-ci/lava-deqp-runner.sh | 51 ------------------- .gitlab-ci/lava-deqp.yml.jinja2 | 25 ++++++++- .gitlab-ci/lava-gitlab-ci.yml | 6 ++- 16 files changed, 203 insertions(+), 289 deletions(-) delete mode 100644 .gitlab-ci/lava-deqp-runner.sh (limited to '.gitlab-ci') diff --git a/.gitlab-ci/build-cts-runner.sh b/.gitlab-ci/build-cts-runner.sh index 716cf661637..cd6c6adbce7 100644 --- a/.gitlab-ci/build-cts-runner.sh +++ b/.gitlab-ci/build-cts-runner.sh @@ -2,9 +2,9 @@ set -ex -git clone https://gitlab.freedesktop.org/mesa/parallel-deqp-runner.git --depth 1 -b mesa-ci-2019-11-22 +git clone https://gitlab.freedesktop.org/mesa/parallel-deqp-runner.git --depth 1 -b mesa-ci-2019-12-17 cd parallel-deqp-runner -meson build/ +meson build/ $EXTRA_MESON_ARGS ninja -C build -j4 install cd .. rm -rf parallel-deqp-runner diff --git a/.gitlab-ci/build-deqp-gl.sh b/.gitlab-ci/build-deqp-gl.sh index 7e4d894f261..64e4db0a2bc 100644 --- a/.gitlab-ci/build-deqp-gl.sh +++ b/.gitlab-ci/build-deqp-gl.sh @@ -29,6 +29,7 @@ cd /deqp cmake -G Ninja \ -DDEQP_TARGET=surfaceless \ -DCMAKE_BUILD_TYPE=Release \ + $EXTRA_CMAKE_ARGS \ /VK-GL-CTS ninja @@ -53,6 +54,6 @@ rm -rf /deqp/execserver rm -rf /deqp/modules/egl rm -rf /deqp/framework find -iname '*cmake*' -o -name '*ninja*' -o -name '*.o' -o -name '*.a' | xargs rm -rf -strip modules/*/deqp-* +${STRIP_CMD:-strip} modules/*/deqp-* du -sh * rm -rf /VK-GL-CTS diff --git a/.gitlab-ci/container/lava_arm.sh b/.gitlab-ci/container/lava_arm.sh index c6fdebad423..10c69d4e674 100644 --- a/.gitlab-ci/container/lava_arm.sh +++ b/.gitlab-ci/container/lava_arm.sh @@ -33,13 +33,6 @@ apt-get -y install --no-install-recommends \ procps \ qemu-user-static \ cpio \ - clang-8 \ - llvm-8 \ - libclang-8-dev \ - llvm-8-dev \ - gdc-9 \ - lld-8 \ - nasm \ libegl1-mesa-dev \ \ libdrm-dev:${DEBIAN_ARCH} \ @@ -66,77 +59,25 @@ apt-get -y install --no-install-recommends \ libglvnd-core-dev:${DEBIAN_ARCH} \ libgles2-mesa-dev:${DEBIAN_ARCH} \ libegl1-mesa-dev:${DEBIAN_ARCH} \ - libpng-dev:${DEBIAN_ARCH} + libpng-dev:${DEBIAN_ARCH} \ + libvulkan-dev:${DEBIAN_ARCH} \ + libvulkan1:${DEBIAN_ARCH} \ + libclang-7-dev:${DEBIAN_ARCH} -############### Cross-build dEQP -mkdir -p /artifacts/rootfs/deqp -git config --global user.email "mesa@example.com" -git config --global user.name "Mesa CI" -# XXX: Use --depth 1 once we can drop the cherry-picks. -git clone \ - https://github.com/KhronosGroup/VK-GL-CTS.git \ - -b opengl-es-cts-3.2.5.1 \ - /VK-GL-CTS -cd /VK-GL-CTS -# Fix surfaceless build -git cherry-pick -x 22f41e5e321c6dcd8569c4dad91bce89f06b3670 -git cherry-pick -x 1daa8dff73161ea60ead965bd6c9f2a0a2165648 +############### Build dEQP runner +/usr/share/meson/debcrossgen --arch ${DEBIAN_ARCH} -o /tmp/cross_file.txt +EXTRA_MESON_ARGS="--cross-file /tmp/cross_file.txt" +. .gitlab-ci/build-cts-runner.sh +mkdir -p /artifacts/rootfs/usr/bin +mv /usr/local/bin/deqp-runner /artifacts/rootfs/usr/bin/. -# surfaceless links against libkms and such despite not using it. -sed -i '/gbm/d' targets/surfaceless/surfaceless.cmake -sed -i '/libkms/d' targets/surfaceless/surfaceless.cmake -sed -i '/libgbm/d' targets/surfaceless/surfaceless.cmake -python3 external/fetch_sources.py - -cd /artifacts/rootfs/deqp -cmake -G Ninja \ - -DDEQP_TARGET=surfaceless \ - -DCMAKE_BUILD_TYPE=Release \ - -DCMAKE_C_COMPILER=${GCC_ARCH}-gcc \ - -DCMAKE_CXX_COMPILER=${GCC_ARCH}-g++ \ - /VK-GL-CTS -ninja -rm -rf /artifacts/rootfs/deqp/external -rm -rf /artifacts/rootfs/deqp/modules/gles31 -rm -rf /artifacts/rootfs/deqp/modules/internal -rm -rf /artifacts/rootfs/deqp/executor -rm -rf /artifacts/rootfs/deqp/execserver -rm -rf /artifacts/rootfs/deqp/modules/egl -rm -rf /artifacts/rootfs/deqp/framework -find . -name CMakeFiles | xargs rm -rf -find . -name lib\*.a | xargs rm -rf -du -sh * -rm -rf /VK-GL-CTS - - -############### Cross-build Volt dEQP runner -mkdir -p /battery -cd /battery -wget https://github.com/VoltLang/Battery/releases/download/v0.1.23/battery-0.1.23-x86_64-linux.tar.gz -tar xzvf battery-0.1.23-x86_64-linux.tar.gz -rm battery-0.1.23-x86_64-linux.tar.gz -mv battery /usr/local/bin -rm -rf /battery - -mkdir -p /volt -cd /volt -mkdir -p Watt Volta dEQP -wget -qO- https://github.com/VoltLang/Watt/archive/v0.1.3.tar.gz | tar -xz --strip-components=1 -C ./Watt -wget -qO- https://github.com/VoltLang/Volta/archive/v0.1.3.tar.gz | tar -xz --strip-components=1 -C ./Volta -wget -qO- https://github.com/Wallbraker/dEQP/archive/v0.1.4.tar.gz | tar -xz --strip-components=1 -C ./dEQP -battery config --release --lto Volta Watt -battery build -battery config --arch ${VOLT_ARCH} --cmd-volta Volta/volta Volta/rt Watt dEQP -battery build -rm /usr/local/bin/battery -cp dEQP/deqp /artifacts/rootfs/deqp/deqp-volt -rm -rf /volt - - -############### Remove LLVM now, so the container image is smaller -apt-get -y remove \*llvm\* +############### Build dEQP +EXTRA_CMAKE_ARGS="-DCMAKE_C_COMPILER=${GCC_ARCH}-gcc -DCMAKE_CXX_COMPILER=${GCC_ARCH}-g++" +STRIP_CMD="${GCC_ARCH}-strip" +. .gitlab-ci/build-deqp-gl.sh +mv /deqp /artifacts/rootfs/. ############### Cross-build kernel diff --git a/.gitlab-ci/deqp-panfrost-t720-fails.txt b/.gitlab-ci/deqp-panfrost-t720-fails.txt index bd7f94e4373..b88274db376 100644 --- a/.gitlab-ci/deqp-panfrost-t720-fails.txt +++ b/.gitlab-ci/deqp-panfrost-t720-fails.txt @@ -1,33 +1,31 @@ -dEQP-GLES2.functional.depth_stencil_clear.depth_stencil_masked Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_rbo_rgb565_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_rbo_rgb565_stencil_index8 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_rbo_rgb5_a1_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_rbo_rgb5_a1_stencil_index8 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_rbo_rgba4_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_rbo_rgba4_stencil_index8 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_tex2d_rgba_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_tex2d_rgba_stencil_index8 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_tex2d_rgb_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_tex2d_rgb_stencil_index8 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_rbo_rgb565_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_rbo_rgb565_stencil_index8 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_rbo_rgb5_a1_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_rbo_rgb5_a1_stencil_index8 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_rbo_rgba4_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_rbo_rgba4_stencil_index8 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_tex2d_rgba_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_tex2d_rgba_stencil_index8 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_tex2d_rgb_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_tex2d_rgb_stencil_index8 Fail -dEQP-GLES2.functional.fbo.render.shared_colorbuffer.rbo_rgb565_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.shared_colorbuffer.tex2d_rgba_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.shared_colorbuffer.tex2d_rgb_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.shared_colorbuffer.rbo_rgb5_a1_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.shared_colorbuffer.rbo_rgba4_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.shared_depthbuffer.rbo_rgb565_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.shared_depthbuffer.tex2d_rgba_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.shared_depthbuffer.tex2d_rgb_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.shared_depthbuffer.rbo_rgb5_a1_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.shared_depthbuffer.rbo_rgba4_depth_component16 Fail -dEQP-GLES2.functional.shaders.scoping.valid.local_variable_hides_function_parameter_fragment Fail -dEQP-GLES2.functional.shaders.scoping.valid.local_variable_hides_function_parameter_vertex Fail +dEQP-GLES2.functional.depth_stencil_clear.depth_stencil_masked +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_rbo_rgb565_depth_component16 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_rbo_rgb565_stencil_index8 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_rbo_rgb5_a1_depth_component16 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_rbo_rgb5_a1_stencil_index8 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_rbo_rgba4_depth_component16 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_rbo_rgba4_stencil_index8 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_tex2d_rgb_depth_component16 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_tex2d_rgb_stencil_index8 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_tex2d_rgba_depth_component16 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_tex2d_rgba_stencil_index8 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_rbo_rgb565_depth_component16 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_rbo_rgb565_stencil_index8 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_rbo_rgb5_a1_depth_component16 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_rbo_rgb5_a1_stencil_index8 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_rbo_rgba4_depth_component16 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_rbo_rgba4_stencil_index8 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_tex2d_rgb_depth_component16 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_tex2d_rgb_stencil_index8 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_tex2d_rgba_depth_component16 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_tex2d_rgba_stencil_index8 +dEQP-GLES2.functional.fbo.render.shared_colorbuffer.rbo_rgb565_depth_component16 +dEQP-GLES2.functional.fbo.render.shared_colorbuffer.rbo_rgb5_a1_depth_component16 +dEQP-GLES2.functional.fbo.render.shared_colorbuffer.rbo_rgba4_depth_component16 +dEQP-GLES2.functional.fbo.render.shared_colorbuffer.tex2d_rgb_depth_component16 +dEQP-GLES2.functional.fbo.render.shared_colorbuffer.tex2d_rgba_depth_component16 +dEQP-GLES2.functional.fbo.render.shared_depthbuffer.rbo_rgb565_depth_component16 +dEQP-GLES2.functional.fbo.render.shared_depthbuffer.rbo_rgb5_a1_depth_component16 +dEQP-GLES2.functional.fbo.render.shared_depthbuffer.rbo_rgba4_depth_component16 +dEQP-GLES2.functional.fbo.render.shared_depthbuffer.tex2d_rgb_depth_component16 +dEQP-GLES2.functional.fbo.render.shared_depthbuffer.tex2d_rgba_depth_component16 diff --git a/.gitlab-ci/deqp-panfrost-t720-skips.txt b/.gitlab-ci/deqp-panfrost-t720-skips.txt index 05c5acab717..3ca9b37ce09 100644 --- a/.gitlab-ci/deqp-panfrost-t720-skips.txt +++ b/.gitlab-ci/deqp-panfrost-t720-skips.txt @@ -3,11 +3,11 @@ # delete lines from the test list. Be careful. # Skip the perf/stress tests to keep runtime manageable -dEQP-GLES[0-9]*.performance -dEQP-GLES[0-9]*.stress +dEQP-GLES[0-9]*.performance.* +dEQP-GLES[0-9]*.stress.* # These are really slow on tiling architectures (including llvmpipe). -dEQP-GLES[0-9]*.functional.flush_finish +dEQP-GLES[0-9]*.functional.flush_finish.* # XXX: Why does this flake? dEQP-GLES2.functional.clipping.triangle_vertex.clip_three.clip_neg_x_neg_z_and_pos_x_pos_z_and_neg_x_neg_y_pos_z diff --git a/.gitlab-ci/deqp-panfrost-t760-fails.txt b/.gitlab-ci/deqp-panfrost-t760-fails.txt index bd7f94e4373..b88274db376 100644 --- a/.gitlab-ci/deqp-panfrost-t760-fails.txt +++ b/.gitlab-ci/deqp-panfrost-t760-fails.txt @@ -1,33 +1,31 @@ -dEQP-GLES2.functional.depth_stencil_clear.depth_stencil_masked Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_rbo_rgb565_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_rbo_rgb565_stencil_index8 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_rbo_rgb5_a1_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_rbo_rgb5_a1_stencil_index8 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_rbo_rgba4_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_rbo_rgba4_stencil_index8 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_tex2d_rgba_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_tex2d_rgba_stencil_index8 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_tex2d_rgb_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_tex2d_rgb_stencil_index8 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_rbo_rgb565_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_rbo_rgb565_stencil_index8 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_rbo_rgb5_a1_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_rbo_rgb5_a1_stencil_index8 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_rbo_rgba4_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_rbo_rgba4_stencil_index8 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_tex2d_rgba_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_tex2d_rgba_stencil_index8 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_tex2d_rgb_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_tex2d_rgb_stencil_index8 Fail -dEQP-GLES2.functional.fbo.render.shared_colorbuffer.rbo_rgb565_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.shared_colorbuffer.tex2d_rgba_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.shared_colorbuffer.tex2d_rgb_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.shared_colorbuffer.rbo_rgb5_a1_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.shared_colorbuffer.rbo_rgba4_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.shared_depthbuffer.rbo_rgb565_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.shared_depthbuffer.tex2d_rgba_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.shared_depthbuffer.tex2d_rgb_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.shared_depthbuffer.rbo_rgb5_a1_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.shared_depthbuffer.rbo_rgba4_depth_component16 Fail -dEQP-GLES2.functional.shaders.scoping.valid.local_variable_hides_function_parameter_fragment Fail -dEQP-GLES2.functional.shaders.scoping.valid.local_variable_hides_function_parameter_vertex Fail +dEQP-GLES2.functional.depth_stencil_clear.depth_stencil_masked +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_rbo_rgb565_depth_component16 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_rbo_rgb565_stencil_index8 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_rbo_rgb5_a1_depth_component16 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_rbo_rgb5_a1_stencil_index8 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_rbo_rgba4_depth_component16 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_rbo_rgba4_stencil_index8 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_tex2d_rgb_depth_component16 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_tex2d_rgb_stencil_index8 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_tex2d_rgba_depth_component16 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_tex2d_rgba_stencil_index8 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_rbo_rgb565_depth_component16 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_rbo_rgb565_stencil_index8 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_rbo_rgb5_a1_depth_component16 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_rbo_rgb5_a1_stencil_index8 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_rbo_rgba4_depth_component16 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_rbo_rgba4_stencil_index8 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_tex2d_rgb_depth_component16 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_tex2d_rgb_stencil_index8 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_tex2d_rgba_depth_component16 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_tex2d_rgba_stencil_index8 +dEQP-GLES2.functional.fbo.render.shared_colorbuffer.rbo_rgb565_depth_component16 +dEQP-GLES2.functional.fbo.render.shared_colorbuffer.rbo_rgb5_a1_depth_component16 +dEQP-GLES2.functional.fbo.render.shared_colorbuffer.rbo_rgba4_depth_component16 +dEQP-GLES2.functional.fbo.render.shared_colorbuffer.tex2d_rgb_depth_component16 +dEQP-GLES2.functional.fbo.render.shared_colorbuffer.tex2d_rgba_depth_component16 +dEQP-GLES2.functional.fbo.render.shared_depthbuffer.rbo_rgb565_depth_component16 +dEQP-GLES2.functional.fbo.render.shared_depthbuffer.rbo_rgb5_a1_depth_component16 +dEQP-GLES2.functional.fbo.render.shared_depthbuffer.rbo_rgba4_depth_component16 +dEQP-GLES2.functional.fbo.render.shared_depthbuffer.tex2d_rgb_depth_component16 +dEQP-GLES2.functional.fbo.render.shared_depthbuffer.tex2d_rgba_depth_component16 diff --git a/.gitlab-ci/deqp-panfrost-t760-skips.txt b/.gitlab-ci/deqp-panfrost-t760-skips.txt index 70dc0cb5737..f7d0cd59a90 100644 --- a/.gitlab-ci/deqp-panfrost-t760-skips.txt +++ b/.gitlab-ci/deqp-panfrost-t760-skips.txt @@ -3,8 +3,8 @@ # delete lines from the test list. Be careful. # Skip the perf/stress tests to keep runtime manageable -dEQP-GLES[0-9]*.performance -dEQP-GLES[0-9]*.stress +dEQP-GLES[0-9]*.performance.* +dEQP-GLES[0-9]*.stress.* # These are really slow on tiling architectures (including llvmpipe). -dEQP-GLES[0-9]*.functional.flush_finish +dEQP-GLES[0-9]*.functional.flush_finish.* diff --git a/.gitlab-ci/deqp-panfrost-t820-fails.txt b/.gitlab-ci/deqp-panfrost-t820-fails.txt index bd7f94e4373..b88274db376 100644 --- a/.gitlab-ci/deqp-panfrost-t820-fails.txt +++ b/.gitlab-ci/deqp-panfrost-t820-fails.txt @@ -1,33 +1,31 @@ -dEQP-GLES2.functional.depth_stencil_clear.depth_stencil_masked Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_rbo_rgb565_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_rbo_rgb565_stencil_index8 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_rbo_rgb5_a1_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_rbo_rgb5_a1_stencil_index8 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_rbo_rgba4_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_rbo_rgba4_stencil_index8 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_tex2d_rgba_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_tex2d_rgba_stencil_index8 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_tex2d_rgb_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_tex2d_rgb_stencil_index8 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_rbo_rgb565_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_rbo_rgb565_stencil_index8 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_rbo_rgb5_a1_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_rbo_rgb5_a1_stencil_index8 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_rbo_rgba4_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_rbo_rgba4_stencil_index8 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_tex2d_rgba_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_tex2d_rgba_stencil_index8 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_tex2d_rgb_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_tex2d_rgb_stencil_index8 Fail -dEQP-GLES2.functional.fbo.render.shared_colorbuffer.rbo_rgb565_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.shared_colorbuffer.tex2d_rgba_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.shared_colorbuffer.tex2d_rgb_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.shared_colorbuffer.rbo_rgb5_a1_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.shared_colorbuffer.rbo_rgba4_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.shared_depthbuffer.rbo_rgb565_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.shared_depthbuffer.tex2d_rgba_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.shared_depthbuffer.tex2d_rgb_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.shared_depthbuffer.rbo_rgb5_a1_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.shared_depthbuffer.rbo_rgba4_depth_component16 Fail -dEQP-GLES2.functional.shaders.scoping.valid.local_variable_hides_function_parameter_fragment Fail -dEQP-GLES2.functional.shaders.scoping.valid.local_variable_hides_function_parameter_vertex Fail +dEQP-GLES2.functional.depth_stencil_clear.depth_stencil_masked +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_rbo_rgb565_depth_component16 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_rbo_rgb565_stencil_index8 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_rbo_rgb5_a1_depth_component16 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_rbo_rgb5_a1_stencil_index8 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_rbo_rgba4_depth_component16 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_rbo_rgba4_stencil_index8 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_tex2d_rgb_depth_component16 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_tex2d_rgb_stencil_index8 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_tex2d_rgba_depth_component16 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_tex2d_rgba_stencil_index8 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_rbo_rgb565_depth_component16 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_rbo_rgb565_stencil_index8 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_rbo_rgb5_a1_depth_component16 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_rbo_rgb5_a1_stencil_index8 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_rbo_rgba4_depth_component16 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_rbo_rgba4_stencil_index8 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_tex2d_rgb_depth_component16 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_tex2d_rgb_stencil_index8 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_tex2d_rgba_depth_component16 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_tex2d_rgba_stencil_index8 +dEQP-GLES2.functional.fbo.render.shared_colorbuffer.rbo_rgb565_depth_component16 +dEQP-GLES2.functional.fbo.render.shared_colorbuffer.rbo_rgb5_a1_depth_component16 +dEQP-GLES2.functional.fbo.render.shared_colorbuffer.rbo_rgba4_depth_component16 +dEQP-GLES2.functional.fbo.render.shared_colorbuffer.tex2d_rgb_depth_component16 +dEQP-GLES2.functional.fbo.render.shared_colorbuffer.tex2d_rgba_depth_component16 +dEQP-GLES2.functional.fbo.render.shared_depthbuffer.rbo_rgb565_depth_component16 +dEQP-GLES2.functional.fbo.render.shared_depthbuffer.rbo_rgb5_a1_depth_component16 +dEQP-GLES2.functional.fbo.render.shared_depthbuffer.rbo_rgba4_depth_component16 +dEQP-GLES2.functional.fbo.render.shared_depthbuffer.tex2d_rgb_depth_component16 +dEQP-GLES2.functional.fbo.render.shared_depthbuffer.tex2d_rgba_depth_component16 diff --git a/.gitlab-ci/deqp-panfrost-t820-skips.txt b/.gitlab-ci/deqp-panfrost-t820-skips.txt index 83effaab5c6..0314b22c0cc 100644 --- a/.gitlab-ci/deqp-panfrost-t820-skips.txt +++ b/.gitlab-ci/deqp-panfrost-t820-skips.txt @@ -3,11 +3,11 @@ # delete lines from the test list. Be careful. # Skip the perf/stress tests to keep runtime manageable -dEQP-GLES[0-9]*.performance -dEQP-GLES[0-9]*.stress +dEQP-GLES[0-9]*.performance.* +dEQP-GLES[0-9]*.stress.* # These are really slow on tiling architectures (including llvmpipe). -dEQP-GLES[0-9]*.functional.flush_finish +dEQP-GLES[0-9]*.functional.flush_finish.* # XXX: Why does this flake? dEQP-GLES2.functional.clipping.triangle_vertex.clip_three.clip_neg_x_neg_z_and_pos_x_pos_z_and_neg_x_neg_y_pos_z diff --git a/.gitlab-ci/deqp-panfrost-t860-fails.txt b/.gitlab-ci/deqp-panfrost-t860-fails.txt index bd7f94e4373..b88274db376 100644 --- a/.gitlab-ci/deqp-panfrost-t860-fails.txt +++ b/.gitlab-ci/deqp-panfrost-t860-fails.txt @@ -1,33 +1,31 @@ -dEQP-GLES2.functional.depth_stencil_clear.depth_stencil_masked Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_rbo_rgb565_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_rbo_rgb565_stencil_index8 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_rbo_rgb5_a1_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_rbo_rgb5_a1_stencil_index8 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_rbo_rgba4_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_rbo_rgba4_stencil_index8 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_tex2d_rgba_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_tex2d_rgba_stencil_index8 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_tex2d_rgb_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_tex2d_rgb_stencil_index8 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_rbo_rgb565_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_rbo_rgb565_stencil_index8 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_rbo_rgb5_a1_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_rbo_rgb5_a1_stencil_index8 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_rbo_rgba4_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_rbo_rgba4_stencil_index8 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_tex2d_rgba_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_tex2d_rgba_stencil_index8 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_tex2d_rgb_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_tex2d_rgb_stencil_index8 Fail -dEQP-GLES2.functional.fbo.render.shared_colorbuffer.rbo_rgb565_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.shared_colorbuffer.tex2d_rgba_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.shared_colorbuffer.tex2d_rgb_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.shared_colorbuffer.rbo_rgb5_a1_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.shared_colorbuffer.rbo_rgba4_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.shared_depthbuffer.rbo_rgb565_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.shared_depthbuffer.tex2d_rgba_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.shared_depthbuffer.tex2d_rgb_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.shared_depthbuffer.rbo_rgb5_a1_depth_component16 Fail -dEQP-GLES2.functional.fbo.render.shared_depthbuffer.rbo_rgba4_depth_component16 Fail -dEQP-GLES2.functional.shaders.scoping.valid.local_variable_hides_function_parameter_fragment Fail -dEQP-GLES2.functional.shaders.scoping.valid.local_variable_hides_function_parameter_vertex Fail +dEQP-GLES2.functional.depth_stencil_clear.depth_stencil_masked +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_rbo_rgb565_depth_component16 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_rbo_rgb565_stencil_index8 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_rbo_rgb5_a1_depth_component16 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_rbo_rgb5_a1_stencil_index8 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_rbo_rgba4_depth_component16 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_rbo_rgba4_stencil_index8 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_tex2d_rgb_depth_component16 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_tex2d_rgb_stencil_index8 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_tex2d_rgba_depth_component16 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_tex2d_rgba_stencil_index8 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_rbo_rgb565_depth_component16 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_rbo_rgb565_stencil_index8 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_rbo_rgb5_a1_depth_component16 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_rbo_rgb5_a1_stencil_index8 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_rbo_rgba4_depth_component16 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_rbo_rgba4_stencil_index8 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_tex2d_rgb_depth_component16 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_tex2d_rgb_stencil_index8 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_tex2d_rgba_depth_component16 +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_tex2d_rgba_stencil_index8 +dEQP-GLES2.functional.fbo.render.shared_colorbuffer.rbo_rgb565_depth_component16 +dEQP-GLES2.functional.fbo.render.shared_colorbuffer.rbo_rgb5_a1_depth_component16 +dEQP-GLES2.functional.fbo.render.shared_colorbuffer.rbo_rgba4_depth_component16 +dEQP-GLES2.functional.fbo.render.shared_colorbuffer.tex2d_rgb_depth_component16 +dEQP-GLES2.functional.fbo.render.shared_colorbuffer.tex2d_rgba_depth_component16 +dEQP-GLES2.functional.fbo.render.shared_depthbuffer.rbo_rgb565_depth_component16 +dEQP-GLES2.functional.fbo.render.shared_depthbuffer.rbo_rgb5_a1_depth_component16 +dEQP-GLES2.functional.fbo.render.shared_depthbuffer.rbo_rgba4_depth_component16 +dEQP-GLES2.functional.fbo.render.shared_depthbuffer.tex2d_rgb_depth_component16 +dEQP-GLES2.functional.fbo.render.shared_depthbuffer.tex2d_rgba_depth_component16 diff --git a/.gitlab-ci/deqp-panfrost-t860-skips.txt b/.gitlab-ci/deqp-panfrost-t860-skips.txt index 83effaab5c6..0314b22c0cc 100644 --- a/.gitlab-ci/deqp-panfrost-t860-skips.txt +++ b/.gitlab-ci/deqp-panfrost-t860-skips.txt @@ -3,11 +3,11 @@ # delete lines from the test list. Be careful. # Skip the perf/stress tests to keep runtime manageable -dEQP-GLES[0-9]*.performance -dEQP-GLES[0-9]*.stress +dEQP-GLES[0-9]*.performance.* +dEQP-GLES[0-9]*.stress.* # These are really slow on tiling architectures (including llvmpipe). -dEQP-GLES[0-9]*.functional.flush_finish +dEQP-GLES[0-9]*.functional.flush_finish.* # XXX: Why does this flake? dEQP-GLES2.functional.clipping.triangle_vertex.clip_three.clip_neg_x_neg_z_and_pos_x_pos_z_and_neg_x_neg_y_pos_z diff --git a/.gitlab-ci/deqp-runner.sh b/.gitlab-ci/deqp-runner.sh index ec4eb61571d..0454f4bf171 100755 --- a/.gitlab-ci/deqp-runner.sh +++ b/.gitlab-ci/deqp-runner.sh @@ -1,25 +1,25 @@ -#!/bin/bash +#!/bin/sh set -ex -DEQP_OPTIONS=(--deqp-surface-width=256 --deqp-surface-height=256) -DEQP_OPTIONS+=(--deqp-surface-type=pbuffer) -DEQP_OPTIONS+=(--deqp-gl-config-name=rgba8888d24s8ms0) -DEQP_OPTIONS+=(--deqp-visibility=hidden) +DEQP_OPTIONS="--deqp-surface-width=256 --deqp-surface-height=256" +DEQP_OPTIONS="$DEQP_OPTIONS --deqp-surface-type=pbuffer" +DEQP_OPTIONS="$DEQP_OPTIONS --deqp-gl-config-name=rgba8888d24s8ms0" +DEQP_OPTIONS="$DEQP_OPTIONS --deqp-visibility=hidden" # It would be nice to be able to enable the watchdog, so that hangs in a test # don't need to wait the full hour for the run to time out. However, some # shaders end up taking long enough to compile # (dEQP-GLES31.functional.ubo.random.all_per_block_buffers.20 for example) # that they'll sporadically trigger the watchdog. -#DEQP_OPTIONS+=(--deqp-watchdog=enable) +#DEQP_OPTIONS="$DEQP_OPTIONS --deqp-watchdog=enable" if [ -z "$DEQP_VER" ]; then echo 'DEQP_VER must be set to something like "gles2", "gles31" or "vk" for the test run' exit 1 fi -if [ "$DEQP_VER" == "vk" ]; then +if [ "$DEQP_VER" = "vk" ]; then if [ -z "$VK_DRIVER" ]; then echo 'VK_DRIVER must be to something like "radeon" or "intel" for the test run' exit 1 @@ -46,7 +46,7 @@ RESULTS=`pwd`/results mkdir -p $RESULTS # Generate test case list file. -if [ "$DEQP_VER" == "vk" ]; then +if [ "$DEQP_VER" = "vk" ]; then cp /deqp/mustpass/vk-master.txt /tmp/case-list.txt DEQP=/deqp/external/vulkancts/modules/vulkan/deqp-vk else @@ -83,8 +83,9 @@ run_cts() { $XFAIL \ --job ${DEQP_PARALLEL:-1} \ --allow-flakes true \ + $DEQP_RUNNER_OPTIONS \ -- \ - "${DEQP_OPTIONS[@]}" + $DEQP_OPTIONS } report_flakes() { @@ -199,8 +200,10 @@ if [ $DEQP_EXITCODE -ne 0 ]; then $RESULTS/cts-runner-unexpected-results.txt head -n 50 $RESULTS/cts-runner-unexpected-results.txt - # Save the logs for up to the first 50 unexpected results: - head -n 50 $RESULTS/cts-runner-unexpected-results.txt | quiet extract_xml_results /tmp/*.qpa + if [ -z "$DEQP_NO_SAVE_RESULTS" ]; then + # Save the logs for up to the first 50 unexpected results: + head -n 50 $RESULTS/cts-runner-unexpected-results.txt | quiet extract_xml_results /tmp/*.qpa + fi count=`cat $RESULTS/cts-runner-unexpected-results.txt | wc -l` @@ -217,8 +220,10 @@ else echo "Some flakes found (see cts-runner-flakes.txt in artifacts for full results):" head -n 50 $RESULTS/cts-runner-flakes.txt - # Save the logs for up to the first 50 flakes: - head -n 50 $RESULTS/cts-runner-flakes.txt | quiet extract_xml_results /tmp/*.qpa + if [ -z "$DEQP_NO_SAVE_RESULTS" ]; then + # Save the logs for up to the first 50 flakes: + head -n 50 $RESULTS/cts-runner-flakes.txt | quiet extract_xml_results /tmp/*.qpa + fi # Report the flakes to IRC channel for monitoring (if configured): quiet report_flakes $RESULTS/cts-runner-flakes.txt diff --git a/.gitlab-ci/generate_lava.py b/.gitlab-ci/generate_lava.py index b2c8c296beb..46bc2e1f5c8 100755 --- a/.gitlab-ci/generate_lava.py +++ b/.gitlab-ci/generate_lava.py @@ -70,6 +70,9 @@ for device_type in args.device_types: values['boot_method'] = device_types[device_type]['boot_method'] values['kernel_image_type'] = device_types[device_type]['kernel_image_type'] values['tags'] = device_types[device_type]['tags'] + values['fails_file'] = 'deqp-%s-fails.txt' % device_types[device_type]['gpu_version'] + values['skips_file'] = 'deqp-%s-skips.txt' % device_types[device_type]['gpu_version'] + values['deqp_version'] = 'gles2' f = open('results/lava-deqp-%s.yml' % device_type, "w") f.write(template.render(values)) diff --git a/.gitlab-ci/lava-deqp-runner.sh b/.gitlab-ci/lava-deqp-runner.sh deleted file mode 100644 index 36b9caef4f5..00000000000 --- a/.gitlab-ci/lava-deqp-runner.sh +++ /dev/null @@ -1,51 +0,0 @@ -#!/bin/sh - -GPU_VERSION="$1" - -DEQP_OPTIONS="--deqp-surface-width=256 --deqp-surface-height=256" -DEQP_OPTIONS="$DEQP_OPTIONS --deqp-visibility=hidden" -DEQP_OPTIONS="$DEQP_OPTIONS --deqp-log-images=disable" -DEQP_OPTIONS="$DEQP_OPTIONS --deqp-watchdog=enable" -DEQP_OPTIONS="$DEQP_OPTIONS --deqp-crashhandler=enable" -DEQP_OPTIONS="$DEQP_OPTIONS --deqp-surface-type=pbuffer" - -export LIBGL_DRIVERS_PATH=/mesa/lib/dri/ -export LD_LIBRARY_PATH=/mesa/lib/ -export MESA_GLES_VERSION_OVERRIDE=3.0 - -DEVFREQ_GOVERNOR=`echo /sys/devices/platform/*.gpu/devfreq/devfreq0/governor` -echo performance > $DEVFREQ_GOVERNOR - -cd /deqp/modules/gles2 - -# Generate test case list file -./deqp-gles2 $DEQP_OPTIONS --deqp-runmode=stdout-caselist | grep "TEST: dEQP-GLES2" | cut -d ' ' -f 2 > /tmp/case-list.txt - -# Note: not using sorted input and comm, becuase I want to run the tests in -# the same order that dEQP would. -while read -r line; do - if echo "$line" | grep -q '^[^#]'; then - sed -i "/$line/d" /tmp/case-list.txt - fi -done < /deqp/deqp-$GPU_VERSION-skips.txt - -/deqp/deqp-volt --cts-build-dir=/deqp \ - --threads=8 \ - --test-names-file=/tmp/case-list.txt \ - --results-file=/tmp/results.txt \ - --no-passed-results \ - --regression-file=/deqp/deqp-$GPU_VERSION-fails.txt \ - --no-rerun-tests \ - --print-regression \ - --no-print-fail \ - --no-print-quality \ - --no-colour-term \ - $DEQP_OPTIONS - -if [ $? -ne 0 ]; then - echo "Regressions detected" - echo "deqp: fail" -else - echo "No regressions detected" - echo "deqp: pass" -fi diff --git a/.gitlab-ci/lava-deqp.yml.jinja2 b/.gitlab-ci/lava-deqp.yml.jinja2 index 7723d1fb894..55b87ba6123 100644 --- a/.gitlab-ci/lava-deqp.yml.jinja2 +++ b/.gitlab-ci/lava-deqp.yml.jinja2 @@ -57,8 +57,29 @@ actions: - mount -t devtmpfs none /dev - mkdir -p /dev/pts - mount -t devpts devpts /dev/pts - - sh /deqp/lava-deqp-runner.sh {{ gpu_version }} - - cat /proc/loadavg + + - export MESA_GLES_VERSION_OVERRIDE=3.0 + - export DEQP_PARALLEL=6 + - export DEQP_NO_SAVE_RESULTS=1 + - 'export DEQP_RUNNER_OPTIONS="--compact-display false --shuffle false"' + - export DEQP_EXPECTED_FAILS={{ fails_file }} + - export DEQP_SKIPS={{ skips_file }} + - export DEQP_VER={{ deqp_version }} + - export LIBGL_DRIVERS_PATH=`pwd`/install/lib/dri + + # Put stuff where the runner script expects it + - mkdir artifacts + - mkdir results + - mkdir -p install/lib + - cp /deqp/$DEQP_EXPECTED_FAILS artifacts/. + - cp /deqp/$DEQP_SKIPS artifacts/. + - mv /mesa/lib/* install/lib/. + + - "if sh /deqp/deqp-runner.sh; then + echo 'deqp: pass'; + else + echo 'deqp: fail'; + fi" parse: pattern: '(?P\S*):\s+(?P(pass|fail))' from: inline diff --git a/.gitlab-ci/lava-gitlab-ci.yml b/.gitlab-ci/lava-gitlab-ci.yml index 6dfe47824f2..6ac3df3be58 100644 --- a/.gitlab-ci/lava-gitlab-ci.yml +++ b/.gitlab-ci/lava-gitlab-ci.yml @@ -11,7 +11,7 @@ include: - .container variables: REPO_SUFFIX: ${CI_JOB_NAME} - DEBIAN_TAG: &debian_tag '2019-12-13-1' + DEBIAN_TAG: &debian_tag '2019-12-17-1' DEBIAN_EXEC: 'DEBIAN_ARCH=${DEBIAN_ARCH} GCC_ARCH=${GCC_ARCH} KERNEL_ARCH=${KERNEL_ARCH} @@ -84,7 +84,7 @@ lava_arm64: - rm -rf /artifacts/rootfs/mesa/include # Pack rootfs - - cp .gitlab-ci/lava-deqp-runner.sh /artifacts/rootfs/deqp/. + - cp .gitlab-ci/deqp-runner.sh /artifacts/rootfs/deqp/. - cp .gitlab-ci/deqp-*-fails.txt /artifacts/rootfs/deqp/. - cp .gitlab-ci/deqp-*-skips.txt /artifacts/rootfs/deqp/. - du -sh /artifacts/rootfs/deqp/* @@ -132,6 +132,8 @@ lava-build:arm64: variables: GIT_STRATEGY: none # testing doesn't build anything from source TAG: *debian_tag + DEQP_PARALLEL: 6 + NIR_VALIDATE: 0 image: $CI_REGISTRY_IMAGE/debian/lava_${DEBIAN_ARCH}:$TAG script: - lava_job_id=`lavacli jobs submit $CI_PROJECT_DIR/results/lava-deqp-$DEVICE_TYPE.yml` -- cgit v1.2.3