Merge branch 'gtest-suite' into 'main'

Draft: radeonsi/ci: Merge VA-API jobs thanks to gtest deqp-runner suites

See merge request mesa/mesa!39015
This commit is contained in:
Valentine Burley 2025-12-20 00:50:35 +00:00
commit 39f7eca96b
8 changed files with 9 additions and 109 deletions

View file

@ -3,14 +3,13 @@
# When changing this file, you need to bump the following # When changing this file, you need to bump the following
# .gitlab-ci/image-tags.yml tags: # .gitlab-ci/image-tags.yml tags:
# DEBIAN_TEST_ANDROID_TAG
# DEBIAN_TEST_BASE_TAG # DEBIAN_TEST_BASE_TAG
set -uex set -uex
section_start deqp-runner "Building deqp-runner" section_start deqp-runner "Building deqp-runner"
DEQP_RUNNER_VERSION=0.20.3 DEQP_RUNNER_GIT_REV=a4ecac76cfefcce9a42dcb5dc2b5a6db39bbbb5e
commits_to_backport=( commits_to_backport=(
) )
@ -18,7 +17,7 @@ commits_to_backport=(
patch_files=( patch_files=(
) )
DEQP_RUNNER_GIT_URL="${DEQP_RUNNER_GIT_URL:-https://gitlab.freedesktop.org/mesa/deqp-runner.git}" DEQP_RUNNER_GIT_URL="${DEQP_RUNNER_GIT_URL:-https://gitlab.freedesktop.org/Valentine/deqp-runner.git}"
if [ -n "${DEQP_RUNNER_GIT_TAG:-}" ]; then if [ -n "${DEQP_RUNNER_GIT_TAG:-}" ]; then
DEQP_RUNNER_GIT_CHECKOUT="$DEQP_RUNNER_GIT_TAG" DEQP_RUNNER_GIT_CHECKOUT="$DEQP_RUNNER_GIT_TAG"

View file

@ -1,77 +0,0 @@
#!/usr/bin/env bash
# shellcheck disable=SC2086 # we want word splitting
# shellcheck disable=SC1091 # paths only become valid at runtime
. "${SCRIPTS_DIR}/setup-test-env.sh"
set -ex
INSTALL=$PWD/install
export PATH=/va/bin:$PATH
# Set up the driver environment.
export LD_LIBRARY_PATH=$INSTALL/lib/
export LIBVA_DRIVERS_PATH=$INSTALL/lib/dri/
# libva spams driver open info by default, and that happens per testcase.
export LIBVA_MESSAGING_LEVEL=1
if [ -e "$INSTALL/$GPU_VERSION-fails.txt" ]; then
GTEST_RUNNER_OPTIONS="$GTEST_RUNNER_OPTIONS --baseline $INSTALL/$GPU_VERSION-fails.txt"
fi
# Default to an empty known flakes file if it doesn't exist.
touch "$INSTALL/$GPU_VERSION-flakes.txt"
if [ -n "$GALLIUM_DRIVER" ] && [ -e "$INSTALL/$GALLIUM_DRIVER-skips.txt" ]; then
GTEST_SKIPS="$GTEST_SKIPS --skips $INSTALL/$GALLIUM_DRIVER-skips.txt"
fi
if [ -n "$DRIVER_NAME" ] && [ -e "$INSTALL/$DRIVER_NAME-skips.txt" ]; then
GTEST_SKIPS="$GTEST_SKIPS --skips $INSTALL/$DRIVER_NAME-skips.txt"
fi
if [ -e "$INSTALL/$GPU_VERSION-skips.txt" ]; then
GTEST_SKIPS="$GTEST_SKIPS --skips $INSTALL/$GPU_VERSION-skips.txt"
fi
set +e
gtest-runner \
run \
--gtest $GTEST \
--output ${RESULTS_DIR} \
--jobs ${FDO_CI_CONCURRENT:-4} \
$GTEST_SKIPS \
--flakes $INSTALL/$GPU_VERSION-flakes.txt \
--fraction-start ${CI_NODE_INDEX:-1} \
--fraction $((${CI_NODE_TOTAL:-1} * ${GTEST_FRACTION:-1})) \
--env "LD_PRELOAD=$TEST_LD_PRELOAD" \
$GTEST_RUNNER_OPTIONS
GTEST_EXITCODE=$?
deqp-runner junit \
--testsuite gtest \
--results $RESULTS_DIR/failures.csv \
--output $RESULTS_DIR/junit.xml \
--limit 50 \
--template "See $ARTIFACTS_BASE_URL/results/{{testcase}}.xml"
# Report the flakes to the IRC channel for monitoring (if configured):
if [ -n "$FLAKES_CHANNEL" ]; then
python3 $INSTALL/report-flakes.py \
--host irc.oftc.net \
--port 6667 \
--results $RESULTS_DIR/results.csv \
--known-flakes $INSTALL/$GPU_VERSION-flakes.txt \
--channel "$FLAKES_CHANNEL" \
--runner "$CI_RUNNER_DESCRIPTION" \
--job "$CI_JOB_ID" \
--url "$CI_JOB_URL" \
--branch "${CI_MERGE_REQUEST_SOURCE_BRANCH_NAME:-$CI_COMMIT_BRANCH}" \
--branch-title "${CI_MERGE_REQUEST_TITLE:-$CI_COMMIT_TITLE}" || true
fi
exit $GTEST_EXITCODE

View file

@ -22,7 +22,7 @@ variables:
DEBIAN_BUILD_BASE_TAG: "20251016-riscv" DEBIAN_BUILD_BASE_TAG: "20251016-riscv"
DEBIAN_BUILD_TAG: "20250926-D3D618" DEBIAN_BUILD_TAG: "20250926-D3D618"
DEBIAN_TEST_BASE_TAG: "20251203-virgl" DEBIAN_TEST_BASE_TAG: "20251218-deqp-runner"
DEBIAN_TEST_ANDROID_TAG: "20251212-angle-2e" DEBIAN_TEST_ANDROID_TAG: "20251212-angle-2e"
DEBIAN_TEST_GL_TAG: "20251212-piglit-28" DEBIAN_TEST_GL_TAG: "20251212-piglit-28"
DEBIAN_TEST_VIDEO_TAG: "20250813-vector" DEBIAN_TEST_VIDEO_TAG: "20250813-vector"

View file

@ -1,3 +1,6 @@
[[gtest]]
bin = "/va/bin/test_va_api"
[[fluster]] [[fluster]]
bin = "/fluster/fluster.py" bin = "/fluster/fluster.py"
decoders = [ decoders = [

View file

@ -138,18 +138,6 @@
*radeon_vcn_file_list *radeon_vcn_file_list
when: manual when: manual
.radeonsi-vaapi-fluster-rules:
stage: amd
extends:
- .test-fluster
rules:
- !reference [.radeonsi-vaapi-rules, rules]
- changes:
- src/amd/ci/$GPU_VERSION-fluster-fails.txt
- src/amd/ci/$GPU_VERSION-fluster-flakes.txt
- src/amd/ci/$GPU_VERSION-fluster-skips.txt
when: on_success
.radeonsi-valve-rules: .radeonsi-valve-rules:
stage: amd stage: amd
rules: rules:

View file

@ -128,27 +128,14 @@ radeonsi-raven-va:
- .lava-x86_64-test-video - .lava-x86_64-test-video
- .radeonsi-raven-test:x86_64 - .radeonsi-raven-test:x86_64
- .radeonsi-vaapi-rules - .radeonsi-vaapi-rules
- .test-fluster
- .lava-hp-x360-14a-cb0001xx-zork:x86_64 - .lava-hp-x360-14a-cb0001xx-zork:x86_64
variables: variables:
HWCI_TEST_SCRIPT: "/install/gtest-runner.sh" DEQP_SUITE: vaapi
GPU_VERSION: radeonsi-raven-va
# While the tests don't need Xorg, it's an easy way to keep DRM open so we don't # While the tests don't need Xorg, it's an easy way to keep DRM open so we don't
# spend all our time in drm_lastclose()'s modesetting. # spend all our time in drm_lastclose()'s modesetting.
HWCI_START_WESTON: 1 HWCI_START_WESTON: 1
GTEST: test_va_api
# The big 10-surface 10k allocations oomkill us at around 2.5G of GPU memory
# allocated if we run at the normal 4 threads.
# https://github.com/intel/libva-utils/issues/248
FDO_CI_CONCURRENT: 1
radeonsi-raven-vaapi-fluster:
extends:
- .lava-x86_64-test-video
- .radeonsi-raven-test:x86_64
- .radeonsi-vaapi-fluster-rules
- .lava-hp-x360-14a-cb0001xx-zork:x86_64
variables:
DEQP_SUITE: fluster-vaapi
GPU_VERSION: radeonsi-raven-fluster
radeonsi-mendocino-glcts-piglit: radeonsi-mendocino-glcts-piglit:
extends: extends: