Mesa (main): ci/llvmpipe: Add a fractional ASan run.

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Tue Aug 31 19:27:07 UTC 2021


Module: Mesa
Branch: main
Commit: 3e94af062949322aab18bba482863ad7ae96b137
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=3e94af062949322aab18bba482863ad7ae96b137

Author: Emma Anholt <emma at anholt.net>
Date:   Fri Aug 20 10:32:21 2021 -0700

ci/llvmpipe: Add a fractional ASan run.

This reproduces #5254 and seems like a good idea to be checking normally.

I think running some desktop GL would also be useful here, but it turns
out that desktop glcts is pretty leaky/overflowy inside of deqp.

Acked-by: Daniel Stone <daniels at collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12493>

---

 .../llvmpipe/ci/deqp-llvmpipe-asan-fails.txt       | 38 ++++++++++++++++++++++
 .../drivers/llvmpipe/ci/deqp-llvmpipe-asan.toml    | 15 +++++++++
 src/gallium/drivers/llvmpipe/ci/gitlab-ci.yml      | 12 +++++++
 3 files changed, 65 insertions(+)

diff --git a/src/gallium/drivers/llvmpipe/ci/deqp-llvmpipe-asan-fails.txt b/src/gallium/drivers/llvmpipe/ci/deqp-llvmpipe-asan-fails.txt
new file mode 100644
index 00000000000..a0ac7a4eb55
--- /dev/null
+++ b/src/gallium/drivers/llvmpipe/ci/deqp-llvmpipe-asan-fails.txt
@@ -0,0 +1,38 @@
+# https://gitlab.freedesktop.org/mesa/mesa/-/issues/5254
+dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_rgb8.texture2d_array_to_renderbuffer,Crash
+dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_rgb8.texture3d_to_renderbuffer,Crash
+dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8i_rgb8.cubemap_to_renderbuffer,Crash
+dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8i_rgb8.texture2d_to_renderbuffer,Crash
+dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16f_rg16i.texture2d_array_to_renderbuffer,Crash
+dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16f_rg16i.texture3d_to_renderbuffer,Crash
+dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16f_rg16ui.texture2d_array_to_renderbuffer,Crash
+dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16f_rg16ui.texture3d_to_renderbuffer,Crash
+dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16f_rgb10_a2.texture3d_to_renderbuffer,Crash
+dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16f_rgb10_a2ui.texture2d_array_to_renderbuffer,Crash
+dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16f_rgba8i.texture2d_array_to_renderbuffer,Crash
+dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16f_rgba8i.texture3d_to_renderbuffer,Crash
+dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16f_rgba8ui.texture2d_array_to_renderbuffer,Crash
+dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rg16i.texture3d_to_renderbuffer,Crash
+dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rg16ui.texture2d_array_to_renderbuffer,Crash
+dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rg16ui.texture3d_to_renderbuffer,Crash
+dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8.texture3d_to_renderbuffer,Crash
+dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8i.texture2d_array_to_renderbuffer,Crash
+dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8i.texture3d_to_renderbuffer,Crash
+dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8ui.texture2d_array_to_renderbuffer,Crash
+dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_r8.texture2d_array_to_renderbuffer,Crash
+dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_r8.texture3d_to_renderbuffer,Crash
+dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_r8i.texture2d_to_renderbuffer,Crash
+dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8i.cubemap_to_renderbuffer,Crash
+dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8ui.cubemap_to_renderbuffer,Crash
+dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8ui.texture2d_to_renderbuffer,Crash
+dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8i_r8.cubemap_to_renderbuffer,Crash
+dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8i_r8.texture2d_to_renderbuffer,Crash
+dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8i_r8i.texture2d_array_to_renderbuffer,Crash
+dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8i_r8i.texture3d_to_renderbuffer,Crash
+dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8i_r8ui.texture2d_to_renderbuffer,Crash
+dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8ui_r8.texture2d_array_to_renderbuffer,Crash
+dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8ui_r8i.cubemap_to_renderbuffer,Crash
+dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8ui_r8i.texture2d_to_renderbuffer,Crash
+dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8ui_r8ui.texture3d_to_renderbuffer,Crash
+dEQP-GLES31.functional.draw_buffers_indexed.random.max_implementation_draw_buffers.12,Crash
+dEQP-GLES31.functional.draw_buffers_indexed.random.max_implementation_draw_buffers.2,Crash
diff --git a/src/gallium/drivers/llvmpipe/ci/deqp-llvmpipe-asan.toml b/src/gallium/drivers/llvmpipe/ci/deqp-llvmpipe-asan.toml
new file mode 100644
index 00000000000..212293786af
--- /dev/null
+++ b/src/gallium/drivers/llvmpipe/ci/deqp-llvmpipe-asan.toml
@@ -0,0 +1,15 @@
+
+[[deqp]]
+deqp = "/deqp/modules/gles31/deqp-gles31"
+caselists = ["/deqp/mustpass/gles31-master.txt"]
+skips = ["install/deqp-llvmpipe-skips.txt"]
+deqp_args = [
+    "--deqp-surface-width=256", "--deqp-surface-height=256",
+    "--deqp-surface-type=pbuffer", "--deqp-gl-config-name=rgba8888d24s8ms0", "--deqp-visibility=hidden"
+]
+fraction = 10
+# Would be nice to just set the LD_PRELOAD here instead of in the job, so deqp-runner
+# wasn't asanned, but then the renderer check in deqp-runner.sh fails to pull in asan.
+# Long term I want to just move the renderer check to deqp-runner anyway.
+#  [deqp.env]
+#  LD_PRELOAD = "libasan.so.6"
diff --git a/src/gallium/drivers/llvmpipe/ci/gitlab-ci.yml b/src/gallium/drivers/llvmpipe/ci/gitlab-ci.yml
index 8dfd0404706..979215ab143 100644
--- a/src/gallium/drivers/llvmpipe/ci/gitlab-ci.yml
+++ b/src/gallium/drivers/llvmpipe/ci/gitlab-ci.yml
@@ -97,6 +97,18 @@ llvmpipe-deqp:
   parallel: 2
   extends: .llvmpipe-deqp-test
 
+llvmpipe-deqp-asan:
+  variables:
+    DEQP_VER: gles2 # for the renderer check
+    DEQP_SUITE: llvmpipe-asan
+    GPU_VERSION: llvmpipe-asan
+    DEQP_FRACTION: 10
+    TEST_LD_PRELOAD: libasan.so.6
+  extends: .llvmpipe-deqp-test
+  needs:
+    - debian/x86_test-gl
+    - debian-testing-asan
+
 llvmpipe-egl:
   variables:
     DEQP_VER: egl



More information about the mesa-commit mailing list