summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEric Anholt <eric@anholt.net>2021-03-01 13:03:48 -0800
committerMarge Bot <eric+marge@anholt.net>2021-05-20 03:18:27 +0000
commitaa4f132d514babfa72c1a3dade157fc1429707d8 (patch)
treebeb17401c2b807f47ae5a8042458011dbf3497d3
parentd9e64cb2d72d4c8624b596ea6db4042456890daa (diff)
downloadmesa-aa4f132d514babfa72c1a3dade157fc1429707d8.tar.gz
ci/intel: Add test jobs for dEQP.
This covers dEQP-EGL, GL, and GLES on GLK, APL (BXT), and AML-Y Chromebooks. The GLES tests are fractional runs on some boards to keep the pipeline time down. Flakes are reported to #intel-ci on freenode. Reviewed-by: Tomeu Vizoso <tomeu.vizoso@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10438>
-rw-r--r--.gitlab-ci/lava-gitlab-ci.yml2
-rw-r--r--.gitlab-ci/lava.yml.jinja22
-rw-r--r--.gitlab-ci/test-source-dep.yml15
-rw-r--r--src/gallium/drivers/iris/ci/deqp-iris-amly-fails.txt42
-rw-r--r--src/gallium/drivers/iris/ci/deqp-iris-amly-skips.txt6
-rw-r--r--src/gallium/drivers/iris/ci/deqp-iris-apl-fails.txt27
-rw-r--r--src/gallium/drivers/iris/ci/deqp-iris-apl-skips.txt13
-rw-r--r--src/gallium/drivers/iris/ci/deqp-iris-glk-fails.txt15
-rw-r--r--src/gallium/drivers/iris/ci/deqp-iris-glk-skips.txt13
-rw-r--r--src/gallium/drivers/iris/ci/gitlab-ci.yml153
10 files changed, 276 insertions, 12 deletions
diff --git a/.gitlab-ci/lava-gitlab-ci.yml b/.gitlab-ci/lava-gitlab-ci.yml
index 65377224060..6983ce7a2bb 100644
--- a/.gitlab-ci/lava-gitlab-ci.yml
+++ b/.gitlab-ci/lava-gitlab-ci.yml
@@ -6,7 +6,7 @@
variables:
GIT_STRATEGY: none # testing doesn't build anything from source
ENV_VARS: "DEQP_PARALLEL=6"
- FIXED_ENV_VARS: "CI_PIPELINE_ID=${CI_PIPELINE_ID} CI_JOB_ID=${CI_JOB_ID} CI_PAGES_DOMAIN=${CI_PAGES_DOMAIN} CI_PROJECT_NAME=${CI_PROJECT_NAME} CI_PROJECT_PATH=${CI_PROJECT_PATH} CI_PROJECT_ROOT_NAMESPACE=${CI_PROJECT_ROOT_NAMESPACE} CI_JOB_JWT=${CI_JOB_JWT} CI_SERVER_URL=${CI_SERVER_URL} DRIVER_NAME=${DRIVER_NAME} FDO_UPSTREAM_REPO=${FDO_UPSTREAM_REPO} PIGLIT_NO_WINDOW=1 PIGLIT_REPLAY_UPLOAD_TO_MINIO=1 MINIO_HOST=${MINIO_HOST} LAVA_TEST_SCRIPT=${LAVA_TEST_SCRIPT} TEST_SUITE=${TEST_SUITE}"
+ FIXED_ENV_VARS: "CI_PIPELINE_ID=${CI_PIPELINE_ID} CI_JOB_ID=${CI_JOB_ID} CI_PAGES_DOMAIN=${CI_PAGES_DOMAIN} CI_PROJECT_NAME=${CI_PROJECT_NAME} CI_PROJECT_DIR=${CI_PROJECT_DIR} CI_PROJECT_PATH=${CI_PROJECT_PATH} CI_PROJECT_ROOT_NAMESPACE=${CI_PROJECT_ROOT_NAMESPACE} CI_JOB_JWT=${CI_JOB_JWT} CI_SERVER_URL=${CI_SERVER_URL} DRIVER_NAME=${DRIVER_NAME} FDO_UPSTREAM_REPO=${FDO_UPSTREAM_REPO} PIGLIT_NO_WINDOW=1 PIGLIT_REPLAY_UPLOAD_TO_MINIO=1 MINIO_HOST=${MINIO_HOST} LAVA_TEST_SCRIPT=${LAVA_TEST_SCRIPT} TEST_SUITE=${TEST_SUITE} VK_DRIVER=${VK_DRIVER} FLAKES_CHANNEL=${FLAKES_CHANNEL}"
DEQP_VERSION: gles2
ARTIFACTS_PREFIX: "https://${MINIO_HOST}/mesa-lava"
MESA_URL: "http://caching-proxy/cache/?uri=https://${MINIO_HOST}/artifacts/${CI_PROJECT_PATH}/${CI_PIPELINE_ID}/mesa-${ARCH}.tar.gz"
diff --git a/.gitlab-ci/lava.yml.jinja2 b/.gitlab-ci/lava.yml.jinja2
index b53222ee935..e8c74aac721 100644
--- a/.gitlab-ci/lava.yml.jinja2
+++ b/.gitlab-ci/lava.yml.jinja2
@@ -96,6 +96,8 @@ actions:
- cd /
- wget -S --progress=dot:giga -O- {{ mesa_url }} | tar -xz
+ - mkdir -p $CI_PROJECT_DIR
+ - ln -sf /install $CI_PROJECT_DIR/install
- export DEQP_NO_SAVE_RESULTS=1
- export GPU_VERSION={{ gpu_version }}
diff --git a/.gitlab-ci/test-source-dep.yml b/.gitlab-ci/test-source-dep.yml
index 10b2e6d2bbb..73384372de7 100644
--- a/.gitlab-ci/test-source-dep.yml
+++ b/.gitlab-ci/test-source-dep.yml
@@ -321,6 +321,21 @@
when: on_success
- when: never
+.anv-rules:
+ stage: intel
+ rules:
+ - *ignore_scheduled_pipelines
+ - changes:
+ *mesa_core_file_list
+ when: on_success
+ - changes:
+ *vulkan_file_list
+ when: on_success
+ - changes:
+ - src/intel/**/*
+ when: on_success
+ - when: never
+
# Unfortunately YAML doesn't let us concatenate arrays, so we have to do the
# rules duplication manually
.windows-build-rules:
diff --git a/src/gallium/drivers/iris/ci/deqp-iris-amly-fails.txt b/src/gallium/drivers/iris/ci/deqp-iris-amly-fails.txt
new file mode 100644
index 00000000000..4acd392174a
--- /dev/null
+++ b/src/gallium/drivers/iris/ci/deqp-iris-amly-fails.txt
@@ -0,0 +1,42 @@
+# These line rasterization failures are waived in the CTS
+dEQP-GLES2.functional.rasterization.interpolation.basic.line_loop_wide,Fail
+dEQP-GLES2.functional.rasterization.interpolation.basic.line_strip_wide,Fail
+dEQP-GLES2.functional.rasterization.interpolation.basic.lines_wide,Fail
+dEQP-GLES2.functional.rasterization.interpolation.projected.line_loop_wide,Fail
+dEQP-GLES2.functional.rasterization.interpolation.projected.line_strip_wide,Fail
+dEQP-GLES2.functional.rasterization.interpolation.projected.lines_wide,Fail
+dEQP-GLES3.functional.rasterization.fbo.rbo_singlesample.interpolation.lines_wide,Fail
+dEQP-GLES3.functional.rasterization.fbo.texture_2d.interpolation.lines_wide,Fail
+dEQP-GLES3.functional.rasterization.interpolation.basic.line_loop_wide,Fail
+dEQP-GLES3.functional.rasterization.interpolation.basic.line_strip_wide,Fail
+dEQP-GLES3.functional.rasterization.interpolation.basic.lines_wide,Fail
+dEQP-GLES3.functional.rasterization.interpolation.projected.line_loop_wide,Fail
+dEQP-GLES3.functional.rasterization.interpolation.projected.line_strip_wide,Fail
+dEQP-GLES3.functional.rasterization.interpolation.projected.lines_wide,Fail
+
+# https://gitlab.freedesktop.org/mesa/mesa/-/issues/4167
+dEQP-GLES3.functional.texture.compressed.astc.void_extent_ldr.10x10,Fail
+dEQP-GLES3.functional.texture.compressed.astc.void_extent_ldr.10x5,Fail
+dEQP-GLES3.functional.texture.compressed.astc.void_extent_ldr.10x6,Fail
+dEQP-GLES3.functional.texture.compressed.astc.void_extent_ldr.10x8,Fail
+dEQP-GLES3.functional.texture.compressed.astc.void_extent_ldr.12x10,Fail
+dEQP-GLES3.functional.texture.compressed.astc.void_extent_ldr.12x12,Fail
+dEQP-GLES3.functional.texture.compressed.astc.void_extent_ldr.4x4,Fail
+dEQP-GLES3.functional.texture.compressed.astc.void_extent_ldr.5x4,Fail
+dEQP-GLES3.functional.texture.compressed.astc.void_extent_ldr.6x5,Fail
+dEQP-GLES3.functional.texture.compressed.astc.void_extent_ldr.6x6,Fail
+dEQP-GLES3.functional.texture.compressed.astc.void_extent_ldr.8x5,Fail
+dEQP-GLES3.functional.texture.compressed.astc.void_extent_ldr.8x6,Fail
+dEQP-GLES3.functional.texture.compressed.astc.void_extent_ldr.8x8,Fail
+
+KHR-GL46.get_texture_sub_image.errors_test,Fail
+KHR-GL46.get_texture_sub_image.functional_test,Fail
+KHR-GL46.gl_spirv.spirv_glsl_to_spirv_builtin_functions_test,Fail
+KHR-GL46.shader_image_load_store.basic-api-bind,Fail
+KHR-GL46.transform_feedback.capture_vertex_interleaved_test,Fail
+KHR-GL46.transform_feedback.capture_vertex_separate_test,Fail
+KHR-GL46.transform_feedback.discard_vertex_test,Fail
+KHR-GL46.transform_feedback.draw_xfb_instanced_test,Crash
+KHR-GL46.transform_feedback.draw_xfb_stream_instanced_test,Crash
+KHR-GL46.transform_feedback.query_vertex_interleaved_test,Fail
+KHR-GL46.transform_feedback.query_vertex_separate_test,Fail
diff --git a/src/gallium/drivers/iris/ci/deqp-iris-amly-skips.txt b/src/gallium/drivers/iris/ci/deqp-iris-amly-skips.txt
new file mode 100644
index 00000000000..b62e3f97f47
--- /dev/null
+++ b/src/gallium/drivers/iris/ci/deqp-iris-amly-skips.txt
@@ -0,0 +1,6 @@
+# Timeouts in CI
+KHR-GL46.copy_image.functional
+KHR-GL46.enhanced_layouts.uniform_block_member_align_non_power_of_2
+KHR-GL46.arrays_of_arrays_gl.SizedDeclarationsPrimitive
+KHR-GL46.texture_swizzle.smoke
+KHR-GL46.enhanced_layouts.ssb_member_align_non_power_of_2
diff --git a/src/gallium/drivers/iris/ci/deqp-iris-apl-fails.txt b/src/gallium/drivers/iris/ci/deqp-iris-apl-fails.txt
new file mode 100644
index 00000000000..7b4687eb3ef
--- /dev/null
+++ b/src/gallium/drivers/iris/ci/deqp-iris-apl-fails.txt
@@ -0,0 +1,27 @@
+# These line rasterization failures are waived in the CTS
+dEQP-GLES2.functional.rasterization.interpolation.basic.line_loop_wide,Fail
+dEQP-GLES2.functional.rasterization.interpolation.basic.line_strip_wide,Fail
+dEQP-GLES2.functional.rasterization.interpolation.basic.lines_wide,Fail
+dEQP-GLES2.functional.rasterization.interpolation.projected.line_loop_wide,Fail
+dEQP-GLES2.functional.rasterization.interpolation.projected.line_strip_wide,Fail
+dEQP-GLES2.functional.rasterization.interpolation.projected.lines_wide,Fail
+dEQP-GLES3.functional.rasterization.fbo.rbo_singlesample.interpolation.lines_wide,Fail
+dEQP-GLES3.functional.rasterization.fbo.texture_2d.interpolation.lines_wide,Fail
+dEQP-GLES3.functional.rasterization.interpolation.basic.line_loop_wide,Fail
+dEQP-GLES3.functional.rasterization.interpolation.basic.line_strip_wide,Fail
+dEQP-GLES3.functional.rasterization.interpolation.basic.lines_wide,Fail
+dEQP-GLES3.functional.rasterization.interpolation.projected.line_loop_wide,Fail
+dEQP-GLES3.functional.rasterization.interpolation.projected.line_strip_wide,Fail
+dEQP-GLES3.functional.rasterization.interpolation.projected.lines_wide,Fail
+
+KHR-GL46.get_texture_sub_image.errors_test,Fail
+KHR-GL46.get_texture_sub_image.functional_test,Fail
+KHR-GL46.gl_spirv.spirv_glsl_to_spirv_builtin_functions_test,Fail
+KHR-GL46.shader_image_load_store.basic-api-bind,Fail
+KHR-GL46.transform_feedback.capture_vertex_interleaved_test,Fail
+KHR-GL46.transform_feedback.capture_vertex_separate_test,Fail
+KHR-GL46.transform_feedback.discard_vertex_test,Fail
+KHR-GL46.transform_feedback.draw_xfb_instanced_test,Crash
+KHR-GL46.transform_feedback.draw_xfb_stream_instanced_test,Crash
+KHR-GL46.transform_feedback.query_vertex_interleaved_test,Fail
+KHR-GL46.transform_feedback.query_vertex_separate_test,Fail
diff --git a/src/gallium/drivers/iris/ci/deqp-iris-apl-skips.txt b/src/gallium/drivers/iris/ci/deqp-iris-apl-skips.txt
new file mode 100644
index 00000000000..421d8571acf
--- /dev/null
+++ b/src/gallium/drivers/iris/ci/deqp-iris-apl-skips.txt
@@ -0,0 +1,13 @@
+# 60s timeout in CI
+dEQP-GLES31.functional.ubo.random.all_per_block_buffers.20
+KHR-GL46.arrays_of_arrays_gl.ConstructorsAndUnsizedDeclConstructorSizing1
+KHR-GL46.arrays_of_arrays_gl.ConstructorsAndUnsizedDeclConstructors1
+KHR-GL46.arrays_of_arrays_gl.SizedDeclarationsPrimitive
+KHR-GL46.arrays_of_arrays_gl.SubroutineFunctionCalls2
+KHR-GL46.copy_image.functional
+KHR-GL46.enhanced_layouts.uniform_block_member_align_non_power_of_2
+KHR-GL46.enhanced_layouts.uniform_block_member_invalid_offset_alignment
+KHR-GL46.enhanced_layouts.ssb_member_align_non_power_of_2
+KHR-GL46.texture_swizzle.functional
+KHR-GL46.texture_swizzle.smoke
+KHR-GL46.tessellation_shader.tessellation_control_to_tessellation_evaluation.gl_MaxPatchVertices_Position_PointSize
diff --git a/src/gallium/drivers/iris/ci/deqp-iris-glk-fails.txt b/src/gallium/drivers/iris/ci/deqp-iris-glk-fails.txt
new file mode 100644
index 00000000000..b0cfc82d2e4
--- /dev/null
+++ b/src/gallium/drivers/iris/ci/deqp-iris-glk-fails.txt
@@ -0,0 +1,15 @@
+# These line rasterization failures are waived in the CTS
+dEQP-GLES2.functional.rasterization.interpolation.basic.line_loop_wide,Fail
+dEQP-GLES2.functional.rasterization.interpolation.basic.line_strip_wide,Fail
+dEQP-GLES2.functional.rasterization.interpolation.basic.lines_wide,Fail
+dEQP-GLES2.functional.rasterization.interpolation.projected.line_loop_wide,Fail
+dEQP-GLES2.functional.rasterization.interpolation.projected.line_strip_wide,Fail
+dEQP-GLES2.functional.rasterization.interpolation.projected.lines_wide,Fail
+dEQP-GLES3.functional.rasterization.fbo.rbo_singlesample.interpolation.lines_wide,Fail
+dEQP-GLES3.functional.rasterization.fbo.texture_2d.interpolation.lines_wide,Fail
+dEQP-GLES3.functional.rasterization.interpolation.basic.line_loop_wide,Fail
+dEQP-GLES3.functional.rasterization.interpolation.basic.line_strip_wide,Fail
+dEQP-GLES3.functional.rasterization.interpolation.basic.lines_wide,Fail
+dEQP-GLES3.functional.rasterization.interpolation.projected.line_loop_wide,Fail
+dEQP-GLES3.functional.rasterization.interpolation.projected.line_strip_wide,Fail
+dEQP-GLES3.functional.rasterization.interpolation.projected.lines_wide,Fail
diff --git a/src/gallium/drivers/iris/ci/deqp-iris-glk-skips.txt b/src/gallium/drivers/iris/ci/deqp-iris-glk-skips.txt
new file mode 100644
index 00000000000..421d8571acf
--- /dev/null
+++ b/src/gallium/drivers/iris/ci/deqp-iris-glk-skips.txt
@@ -0,0 +1,13 @@
+# 60s timeout in CI
+dEQP-GLES31.functional.ubo.random.all_per_block_buffers.20
+KHR-GL46.arrays_of_arrays_gl.ConstructorsAndUnsizedDeclConstructorSizing1
+KHR-GL46.arrays_of_arrays_gl.ConstructorsAndUnsizedDeclConstructors1
+KHR-GL46.arrays_of_arrays_gl.SizedDeclarationsPrimitive
+KHR-GL46.arrays_of_arrays_gl.SubroutineFunctionCalls2
+KHR-GL46.copy_image.functional
+KHR-GL46.enhanced_layouts.uniform_block_member_align_non_power_of_2
+KHR-GL46.enhanced_layouts.uniform_block_member_invalid_offset_alignment
+KHR-GL46.enhanced_layouts.ssb_member_align_non_power_of_2
+KHR-GL46.texture_swizzle.functional
+KHR-GL46.texture_swizzle.smoke
+KHR-GL46.tessellation_shader.tessellation_control_to_tessellation_evaluation.gl_MaxPatchVertices_Position_PointSize
diff --git a/src/gallium/drivers/iris/ci/gitlab-ci.yml b/src/gallium/drivers/iris/ci/gitlab-ci.yml
index 62cd49f7591..3c1c24192f9 100644
--- a/src/gallium/drivers/iris/ci/gitlab-ci.yml
+++ b/src/gallium/drivers/iris/ci/gitlab-ci.yml
@@ -1,33 +1,164 @@
-.iris-traces:amd64:
+.iris-test:
extends:
- - .lava-piglit-traces:amd64
+ - .lava-test:amd64
- .iris-rules
variables:
- ENV_VARS: "EGL_PLATFORM=surfaceless PIGLIT_PROFILES=replay PIGLIT_JUNIT_RESULTS=1"
DTB: ""
DRIVER_NAME: iris
BOOT_METHOD: depthcharge
KERNEL_IMAGE_TYPE: ""
+ FLAKES_CHANNEL: "#intel-ci"
tags:
- mesa-ci-aarch64-lava-collabora
-iris-apl-traces:amd64:
+.iris-apl-test:
extends:
- - .iris-traces:amd64
+ - .iris-test
variables:
DEVICE_TYPE: asus-C523NA-A20057-coral
- GPU_VERSION: intel-apl
+ GPU_VERSION: iris-apl
+ ENV_VARS: "DEQP_EXPECTED_RENDERER=APL"
-iris-glk-traces:amd64:
+.iris-glk-test:
extends:
- - .iris-traces:amd64
+ - .iris-test
variables:
DEVICE_TYPE: hp-x360-12b-n4000-octopus
- GPU_VERSION: intel-glk
+ GPU_VERSION: iris-glk
+ ENV_VARS: "DEQP_EXPECTED_RENDERER=GLK"
-iris-amly-traces:amd64:
+.iris-amly-test:
extends:
- - .iris-traces:amd64
+ - .iris-test
variables:
DEVICE_TYPE: asus-C433TA-AJ0005-rammus
+ GPU_VERSION: iris-amly
+ ENV_VARS: "DEQP_EXPECTED_RENDERER=AML"
+
+iris-apl-gles2:
+ extends:
+ - .iris-apl-test
+ variables:
+ DEQP_VERSION: gles2
+
+iris-apl-gles3:
+ extends:
+ - .iris-apl-test
+ variables:
+ DEQP_VERSION: gles3
+ ENV_VARS: "DEQP_EXPECTED_RENDERER=APL DEQP_FRACTION=4"
+
+iris-apl-gles31:
+ extends:
+ - .iris-apl-test
+ variables:
+ DEQP_VERSION: gles31
+ ENV_VARS: "DEQP_EXPECTED_RENDERER=APL DEQP_FRACTION=6"
+
+# this appears to silently kill the board sometimes. Leave it as a manual job for debugging.
+iris-apl-gl:
+ extends:
+ - .iris-apl-test
+ - .test-manual-mr
+ variables:
+ DEQP_VERSION: gl46
+
+iris-apl-egl:
+ extends:
+ - .iris-apl-test
+ variables:
+ DEQP_VERSION: egl
+
+iris-glk-gles2:
+ extends:
+ - .iris-glk-test
+ variables:
+ DEQP_VERSION: gles2
+
+iris-glk-gles3:
+ extends:
+ - .iris-glk-test
+ variables:
+ DEQP_VERSION: gles3
+ ENV_VARS: "DEQP_EXPECTED_RENDERER=GLK DEQP_FRACTION=8"
+
+iris-glk-gles31:
+ extends:
+ - .iris-glk-test
+ variables:
+ DEQP_VERSION: gles31
+ ENV_VARS: "DEQP_EXPECTED_RENDERER=GLK DEQP_FRACTION=8"
+
+# this appears to be just unusably slow, timed out at an hour. Needs debugging,
+# so leave it as a manual job.
+iris-glk-gl:
+ extends:
+ - .iris-glk-test
+ - .test-manual-mr
+ variables:
+ DEQP_VERSION: gl46
+
+iris-glk-egl:
+ extends:
+ - .iris-glk-test
+ variables:
+ DEQP_VERSION: egl
+
+iris-amly-gles2:
+ extends:
+ - .iris-amly-test
+ variables:
+ DEQP_VERSION: gles2
+
+iris-amly-gles3:
+ extends:
+ - .iris-amly-test
+ variables:
+ DEQP_VERSION: gles3
+ ENV_VARS: "DEQP_EXPECTED_RENDERER=AML DEQP_FRACTION=2"
+
+iris-amly-gles31:
+ extends:
+ - .iris-amly-test
+ variables:
+ DEQP_VERSION: gles31
+ ENV_VARS: "DEQP_EXPECTED_RENDERER=AML DEQP_FRACTION=2"
+
+iris-amly-gl:
+ extends:
+ - .iris-amly-test
+ variables:
+ DEQP_VERSION: gl46
+
+iris-amly-egl:
+ extends:
+ - .iris-amly-test
+ variables:
+ DEQP_VERSION: egl
+
+.iris-traces:
+ extends:
+ - .lava-traces-base
+ variables:
+ ENV_VARS: "EGL_PLATFORM=surfaceless PIGLIT_PROFILES=replay PIGLIT_JUNIT_RESULTS=1"
+
+iris-apl-traces:
+ variables:
+ GPU_VERSION: intel-apl
+ extends:
+ - .iris-apl-test
+ - .iris-traces
+
+iris-glk-traces:
+ variables:
+ GPU_VERSION: intel-glk
+ extends:
+ - .iris-glk-test
+ - .iris-traces
+
+iris-amly-traces:
+ variables:
GPU_VERSION: intel-amly
+ extends:
+ - .iris-amly-test
+ - .iris-traces