I want to have the possibility to use asan in for etnaviv ci. As lot
devices in the my CI farm are arm32 based lets do some prep work.
I had to skip the mesa:util suite as there are some asan problems
on 32bit platform with the hash_map. Once they got sorted out we can
enable the suite again.
Signed-off-by: Christian Gmeiner <cgmeiner@igalia.com>
Reviewed-by: Eric Engestrom <eric@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23493>
- .gitlab-ci/meson/build.sh
- .gitlab-ci/prepare-artifacts.sh
+debian-arm32-asan:
+ extends:
+ - debian-arm32
+ variables:
+ EXTRA_OPTION: >
+ -D llvm=disabled
+ -D b_sanitize=address
+ -D valgrind=disabled
+ -D tools=dlclose-skip
+ ARTIFACTS_DEBUG_SYMBOLS: 1
+ MINIO_ARTIFACT_NAME: mesa-arm32-asan
+ MESON_TEST_ARGS: "--no-suite mesa:compiler --no-suite mesa:util"
+
debian-arm64:
extends:
- .meson-arm
$STABLE_EPHEMERAL \
crossbuild-essential-$arch \
pkgconf:$arch \
+ libasan8:$arch \
libdrm-dev:$arch \
libelf-dev:$arch \
libexpat1-dev:$arch \
variables:
DEBIAN_X86_64_BUILD_BASE_IMAGE: "debian/x86_64_build-base"
- DEBIAN_BASE_TAG: "2023-06-08-rust-clippy"
+ DEBIAN_BASE_TAG: "2023-06-08-asan-arm32"
DEBIAN_X86_64_BUILD_IMAGE_PATH: "debian/x86_64_build"
DEBIAN_BUILD_TAG: "2023-05-25-bookworm"
- job: debian-arm64
artifacts: false
-# ARM64 testing of bare-metal boards attached to an x86 gitlab-runner system, using an asan mesa build
+# ARM32/64 testing of bare-metal boards attached to an x86 gitlab-runner system, using an asan mesa build
+.baremetal-arm32-asan-test:
+ extends:
+ - .baremetal-test
+ - .use-debian/arm32_test
+ variables:
+ DEQP_RUNNER_OPTIONS: "--env LD_PRELOAD=libasan.so.8:/install/lib/libdlclose-skip.so"
+ MINIO_ARTIFACT_NAME: mesa-arm32-asan
+ needs:
+ - debian/arm32_test
+ - job: debian-arm32-asan
+ artifacts: false
+
.baremetal-arm64-asan-test:
extends:
- .baremetal-test