Module: Mesa Branch: main Commit: 3e94af062949322aab18bba482863ad7ae96b137 URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=3e94af062949322aab18bba482863ad7ae96b137
Author: Emma Anholt <[email protected]> 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 <[email protected]> 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
