ci/vkd3d: add support for running with ASAN

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/42022>
This commit is contained in:
Samuel Pitoiset 2026-06-04 15:17:05 +02:00 committed by Marge Bot
parent 271881ef4b
commit ef9c0f30bb

View file

@ -46,11 +46,21 @@ fi
# Sanity check to ensure that our environment is sufficient to make our tests
# run against the Mesa built by CI, rather than any installed distro version.
MESA_VERSION=$(cat "$INSTALL/VERSION")
if [ "${VKD3D_FORCE_ASAN:-0}" -eq 1 ]; then
export LD_PRELOAD="libasan.so.8:$INSTALL/lib/libdlclose-skip.so"
export ASAN_OPTIONS="malloc_fill_byte=1"
fi
if ! vulkaninfo | grep driverInfo | tee /tmp/version.txt | grep -qF "Mesa $MESA_VERSION"; then
printf "%s\n" "Found $(cat /tmp/version.txt), expected $MESA_VERSION"
exit 1
fi
if [ "${VKD3D_FORCE_ASAN:-0}" -eq 1 ]; then
unset LD_PRELOAD
fi
# Gather the list expected failures
EXPECTATIONFILE="$RESULTS_DIR/$GPU_VERSION-vkd3d-fails.txt"
if [ -f "$INSTALL/$GPU_VERSION-vkd3d-fails.txt" ]; then
@ -94,6 +104,11 @@ fi
printf "%s\n" "Running vkd3d-proton testsuite..."
if [ "${VKD3D_FORCE_ASAN:-0}" -eq 1 ]; then
export LD_PRELOAD="libasan.so.8:$INSTALL/lib/libdlclose-skip.so"
export LD_LIBRARY_PATH="/vkd3d-proton-tests/libs/d3d12:/vkd3d-proton-tests/libs/d3d12core:${LD_LIBRARY_PATH}"
fi
LOGFILE="$RESULTS_DIR/vkd3d-proton-log.txt"
TEST_LOGS="/test-logs"
pushd /vkd3d-proton-tests