Mesa (main): ci/lavapipe: Add a fractional run with ASan
GitLab Mirror
gitlab-mirror at kemper.freedesktop.org
Fri Aug 20 18:35:32 UTC 2021
Module: Mesa
Branch: main
Commit: 03e457bb1aaf6a0962f7bf5903366ba65428025a
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=03e457bb1aaf6a0962f7bf5903366ba65428025a
Author: Emma Anholt <emma at anholt.net>
Date: Mon Jul 12 16:07:07 2021 +0100
ci/lavapipe: Add a fractional run with ASan
This catches use-after-frees and buffer overflows, but not leaks (which we
disable the checking for since the library gets dlclose()d and we end up
with useless backtraces).
Reviewed-by: Adam Jackson <ajax at redhat.com>
Acked-By: Mike Blumenkrantz <michael.blumenkrantz at gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8889>
---
.../frontends/lavapipe/ci/deqp-lvp-asan-fails.txt | 4 +++
.../frontends/lavapipe/ci/deqp-lvp-asan-skips.txt | 5 ++++
src/gallium/frontends/lavapipe/ci/gitlab-ci.yml | 32 ++++++++++++++++------
3 files changed, 32 insertions(+), 9 deletions(-)
diff --git a/src/gallium/frontends/lavapipe/ci/deqp-lvp-asan-fails.txt b/src/gallium/frontends/lavapipe/ci/deqp-lvp-asan-fails.txt
new file mode 100644
index 00000000000..f97426b49b7
--- /dev/null
+++ b/src/gallium/frontends/lavapipe/ci/deqp-lvp-asan-fails.txt
@@ -0,0 +1,4 @@
+dEQP-VK.glsl.builtin.precision.pow.highp.vec2,Fail
+dEQP-VK.glsl.texture_functions.query.texturequerylod.sampler2d_fixed_fragment,Fail
+dEQP-VK.draw.multi_draw.mosaic.indexed_packed.max_draws.standard_stride.10_instances.offset_6,Crash
+dEQP-VK.draw.multi_draw.overlapping.indexed_packed.one_draw.standard_stride.no_instances.offset_6,Crash
diff --git a/src/gallium/frontends/lavapipe/ci/deqp-lvp-asan-skips.txt b/src/gallium/frontends/lavapipe/ci/deqp-lvp-asan-skips.txt
new file mode 100644
index 00000000000..86fec295de4
--- /dev/null
+++ b/src/gallium/frontends/lavapipe/ci/deqp-lvp-asan-skips.txt
@@ -0,0 +1,5 @@
+# Lots of timeouts
+dEQP-VK.texture.filtering.*.combinations.*
+dEQP-VK.binding_model.buffer_device_address.set3.depth3.*
+dEQP-VK.ssbo.layout.*instance_array
+dEQP-VK.tessellation.invariance.*
diff --git a/src/gallium/frontends/lavapipe/ci/gitlab-ci.yml b/src/gallium/frontends/lavapipe/ci/gitlab-ci.yml
index 77920b2cbe2..4dad2d6c4b3 100644
--- a/src/gallium/frontends/lavapipe/ci/gitlab-ci.yml
+++ b/src/gallium/frontends/lavapipe/ci/gitlab-ci.yml
@@ -1,4 +1,4 @@
-lavapipe-vk:
+.lavapipe-test:
stage: software-renderer
extends:
- .test-vk
@@ -7,19 +7,33 @@ lavapipe-vk:
variables:
GPU_VERSION: lvp
VK_DRIVER: lvp
- DEQP_FRACTION: 10
DEQP_EXPECTED_RENDERER: llvmpipe
-lavapipe-nir-stress:
+lavapipe-vk:
stage: software-renderer
extends:
- - .test-vk
- - .lavapipe-rules
- - .deqp-test-vk
+ - .lavapipe-test
+ variables:
+ DEQP_FRACTION: 10
+
+lavapipe-nir-stress:
+ extends:
+ - .lavapipe-test
variables:
- GPU_VERSION: lvp
- VK_DRIVER: lvp
DEQP_FRACTION: 100
- DEQP_EXPECTED_RENDERER: llvmpipe
NIR_TEST_CLONE: "true"
NIR_TEST_SERIALIZE: "true"
+
+lavapipe-vk-asan:
+ extends:
+ - .lavapipe-test
+ variables:
+ GPU_VERSION: lvp-asan
+ DEQP_FRACTION: 50
+ TEST_LD_PRELOAD: libasan.so.6
+ # Disable the leak checks, since the library gets dlclose()d and thus get
+ # totally useless leak reports. We can still catch buffer overflows.
+ ASAN_OPTIONS: "detect_leaks=0"
+ needs:
+ - debian/x86_test-vk
+ - debian-testing-asan
More information about the mesa-commit
mailing list