v3d/vc4/ci: add address sanitizer jobs

This runs part of GL and Vulkan tests in vc4/v3d/v3dv with the address
sanitizer enabled to detect memory issues and leaks.

Reviewed-by: Eric Engestrom <eric@igalia.com>
Signed-off-by: Juan A. Suarez Romero <jasuarez@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30349>
This commit is contained in:
Juan A. Suarez Romero
2024-07-23 13:37:59 +02:00
committed by Marge Bot
parent bee487df48
commit 3c61489a3e
8 changed files with 121 additions and 0 deletions

View File

@@ -1214,3 +1214,8 @@ arm32-dEQP-GLES2.functional.texture.mipmap.2d.basic.nearest_linear_repeat_non_sq
arm32-dEQP-GLES2.functional.texture.wrap.clamp_clamp_nearest_npot_etc1,Fail
arm32-dEQP-GLES2.functional.uniform_api.random.3,Fail
arm32-dEQP-GLES2.functional.uniform_api.random.79,Fail
# These are known failures
asan-KHR-GLES2.core.internalformat.texture2d.depth_component_unsigned_int_depth_component16,Fail
asan-dEQP-GLES2.functional.texture.mipmap.2d.basic.nearest_linear_clamp_non_square,Fail
asan-dEQP-GLES2.functional.texture.wrap.clamp_clamp_nearest_npot_etc1,Fail

View File

@@ -621,3 +621,6 @@ program@run kernel with max work item sizes,Fail
# Failures from arm32
arm32-KHR-GL31.texture_size_promotion.functional,Fail
# https://gitlab.freedesktop.org/mesa/piglit/-/merge_requests/931
asan-spec@arb_texture_buffer_object@formats (vs- ext_gpu_shader4),Fail

View File

@@ -307,3 +307,8 @@ dEQP-VK.robustness.robustness2.*
dEQP-VK.shader_object.rendering.*
dEQP-VK.sparse_resources.*
dEQP-VK.transform_feedback.*
# These are leaks in Vulkan CTS
asan-KHR-GLES31.core.geometry_shader.input.gl_position_value
asan-KHR-GLES31.core.geometry_shader.primitive_counter.lines_to_points_rp
asan-KHR-GL31.ext_texture_shadow_lod.texturelodoffset.sampler2darrayshadow_vertex

View File

@@ -0,0 +1,27 @@
[[deqp]]
deqp = "/deqp/modules/gles2/deqp-gles2"
caselists = ["/deqp/mustpass/gles2-main.txt"]
tests_per_group = 250
deqp_args = [
"--deqp-gl-config-name=rgba8888d24s8ms0",
"--deqp-surface-height=256",
"--deqp-surface-type=pbuffer",
"--deqp-surface-width=256",
"--deqp-visibility=hidden",
]
version_check = "GL ES 2.0.*git"
renderer_check = "VC4 V3D 2.1"
prefix = "asan-"
[[deqp]]
deqp = "/deqp/external/openglcts/modules/glcts"
caselists = ["/deqp/mustpass/gles2-khr-main.txt"]
tests_per_group = 250
deqp_args = [
"--deqp-gl-config-name=rgba8888d24s8ms0",
"--deqp-surface-height=256",
"--deqp-surface-type=pbuffer",
"--deqp-surface-width=256",
"--deqp-visibility=hidden",
]
prefix = "asan-"

View File

@@ -0,0 +1,39 @@
[[deqp]]
deqp = "/deqp/modules/gles31/deqp-gles31"
caselists = ["/deqp/mustpass/gles31-main.txt"]
deqp_args = [
"--deqp-gl-config-name=rgba8888d24s8ms0",
"--deqp-surface-height=256",
"--deqp-surface-type=pbuffer",
"--deqp-surface-width=256",
"--deqp-visibility=hidden",
]
version_check = "GL ES 3.1.*git"
renderer_check = "V3D 4.2.14"
prefix = "asan-"
[[deqp]]
deqp = "/deqp/external/openglcts/modules/glcts"
caselists = [
"/deqp/mustpass/gles31-khr-main.txt",
]
deqp_args = [
"--deqp-gl-config-name=rgba8888d24s8ms0",
"--deqp-surface-height=256",
"--deqp-surface-type=pbuffer",
"--deqp-surface-width=256",
"--deqp-visibility=hidden",
]
prefix = "asan-"
[[deqp]]
deqp = "/deqp/external/openglcts/modules/glcts"
caselists = ["/deqp/mustpass/gl31-main.txt"]
deqp_args = [
"--deqp-gl-config-name=rgba8888d24s8ms0",
"--deqp-surface-height=256",
"--deqp-surface-type=pbuffer",
"--deqp-surface-width=256",
"--deqp-visibility=hidden",
]
prefix = "asan-"

View File

@@ -0,0 +1,6 @@
[[deqp]]
deqp = "/deqp/external/vulkancts/modules/vulkan/deqp-vk"
caselists = ["/deqp/mustpass/vk-main.txt"]
tests_per_group = 5000
renderer_check = "V3D 4.2.14"
prefix = "asan-"

View File

@@ -163,6 +163,11 @@
variables:
BM_BOOTFS: /boot/raspberrypi_arm64
.broadcom-asan-test:arm64:
extends:
- .broadcom-test:arm64
- .baremetal-arm64-asan-test
.broadcom-test:arm32:
extends:
- .broadcom-test

View File

@@ -32,6 +32,16 @@ vc4-rpi3-gl:arm32:
variables:
DEQP_SUITE: broadcom-rpi3-arm32
vc4-rpi3-gl-asan:arm64:
extends:
- .igalia-bcm2837-rpi-3-b
- .broadcom-asan-test:arm64
- .vc4-manual-rules
variables:
FDO_CI_CONCURRENT: 1
HWCI_TEST_SCRIPT: "/install/deqp-runner.sh"
DEQP_SUITE: broadcom-rpi3-asan
DEQP_FRACTION: 10
v3d-rpi4-gl:arm64:
extends:
@@ -90,6 +100,17 @@ v3d-rpi4-gl:arm32:
variables:
DEQP_SUITE: broadcom-rpi4-arm32
v3d-rpi4-gl-asan:arm64:
extends:
- .igalia-bcm2711-rpi-4
- .broadcom-asan-test:arm64
- .v3d-manual-rules
variables:
FDO_CI_CONCURRENT: 1
HWCI_TEST_SCRIPT: "/install/deqp-runner.sh"
DEQP_SUITE: broadcom-rpi4-asan
DEQP_FRACTION: 30
v3dv-rpi4-vk:arm64:
extends:
- .igalia-bcm2711-rpi-4
@@ -117,6 +138,16 @@ v3dv-rpi4-vk-full:arm64:
TEST_PHASE_TIMEOUT: 110
DEQP_FRACTION: 1
v3dv-rpi4-vk-asan:arm64:
extends:
- .igalia-bcm2711-rpi-4
- .broadcom-asan-test:arm64
- .v3dv-manual-rules
variables:
FDO_CI_CONCURRENT: 1
HWCI_TEST_SCRIPT: "/install/deqp-runner.sh"
DEQP_SUITE: broadcom-rpi4-vk-asan
DEQP_FRACTION: 200
v3d-rpi5-gl:arm64:
extends: