From 446672f9b10c579c6da48a1b6efaf261c3a8549f Mon Sep 17 00:00:00 2001 From: Vignesh Raman Date: Thu, 11 Apr 2024 07:02:23 +0530 Subject: [PATCH] ci: Implement support for replaying ANGLE restricted traces ANGLE traces must be compiled together with binaries into binary format. Introduce them for AMD Raven device, replaying on Vulkan (radv). Signed-off-by: David Heidelberg Signed-off-by: Vignesh Raman Part-of: --- .gitlab-ci/common/generate-env.sh | 1 + .gitlab-ci/image-tags.yml | 6 ++--- .gitlab-ci/piglit/piglit-traces.sh | 9 +++++++ src/amd/ci/gitlab-ci-inc.yml | 7 ++++++ src/amd/ci/gitlab-ci.yml | 14 +++++++++++ src/amd/ci/restricted-traces-amd.yml | 36 ++++++++++++++++++++++++++++ 6 files changed, 70 insertions(+), 3 deletions(-) create mode 100644 src/amd/ci/restricted-traces-amd.yml diff --git a/.gitlab-ci/common/generate-env.sh b/.gitlab-ci/common/generate-env.sh index fce084c96b8..4b79ca0c05e 100755 --- a/.gitlab-ci/common/generate-env.sh +++ b/.gitlab-ci/common/generate-env.sh @@ -96,6 +96,7 @@ VARS=( PIGLIT_OPTIONS PIGLIT_PLATFORM PIGLIT_PROFILES + PIGLIT_REPLAY_ANGLE_TAG PIGLIT_REPLAY_ARTIFACTS_BASE_URL PIGLIT_REPLAY_DEVICE_NAME PIGLIT_REPLAY_EXTRA_ARGS diff --git a/.gitlab-ci/image-tags.yml b/.gitlab-ci/image-tags.yml index 347c2f4a890..1dcb862c268 100644 --- a/.gitlab-ci/image-tags.yml +++ b/.gitlab-ci/image-tags.yml @@ -25,9 +25,9 @@ variables: DEBIAN_X86_64_TEST_ANDROID_IMAGE_PATH: "debian/x86_64_test-android" DEBIAN_X86_64_TEST_ANDROID_TAG: "20240401-wlproto" - DEBIAN_X86_64_TEST_GL_TAG: "20240403-ninetests" - DEBIAN_X86_64_TEST_VK_TAG: "20240408-vkd3d-2" - KERNEL_ROOTFS_TAG: "20240408-vkd3d-2" + DEBIAN_X86_64_TEST_GL_TAG: "20240409-angle" + DEBIAN_X86_64_TEST_VK_TAG: "20240409-angle" + KERNEL_ROOTFS_TAG: "20240409-angle" ALPINE_X86_64_BUILD_TAG: "20240401-wlproto" ALPINE_X86_64_LAVA_SSH_TAG: "20240401-wlproto" diff --git a/.gitlab-ci/piglit/piglit-traces.sh b/.gitlab-ci/piglit/piglit-traces.sh index 2b4311f040c..6ea4872db90 100755 --- a/.gitlab-ci/piglit/piglit-traces.sh +++ b/.gitlab-ci/piglit/piglit-traces.sh @@ -189,6 +189,15 @@ RUN_CMD="export LD_LIBRARY_PATH=$__LD_LIBRARY_PATH; $SANITY_MESA_VERSION_CMD && # run. rm -rf replayer-db +# ANGLE: download compiled ANGLE runtime and the compiled restricted traces (all-in-one package) +if [ -n "$PIGLIT_REPLAY_ANGLE_TAG" ]; then + ARCH="amd64" + FILE="angle-bin-${ARCH}-${PIGLIT_REPLAY_ANGLE_TAG}.tar.zst" + ci-fairy s3cp $S3_ARGS "https://s3.freedesktop.org/mesa-tracie-private/${FILE}" "${FILE}" + mkdir -p replayer-db/angle + tar --zstd -xf ${FILE} -C replayer-db/angle/ +fi + if ! eval $RUN_CMD; then printf "%s\n" "Found $(cat /tmp/version.txt), expected $MESA_VERSION" diff --git a/src/amd/ci/gitlab-ci-inc.yml b/src/amd/ci/gitlab-ci-inc.yml index b88412d3aa4..1e72babb28e 100644 --- a/src/amd/ci/gitlab-ci-inc.yml +++ b/src/amd/ci/gitlab-ci-inc.yml @@ -46,6 +46,13 @@ - !reference [.collabora-farm-rules, rules] - !reference [.radv-rules, rules] +.radv-collabora-rules-restricted: + stage: amd + rules: + - !reference [.test, rules] + - !reference [.restricted-rules, rules] + - !reference [.radv-collabora-rules, rules] + .radv-valve-rules: stage: amd rules: diff --git a/src/amd/ci/gitlab-ci.yml b/src/amd/ci/gitlab-ci.yml index d92df6c0fdc..a473b2c705f 100644 --- a/src/amd/ci/gitlab-ci.yml +++ b/src/amd/ci/gitlab-ci.yml @@ -78,6 +78,20 @@ radv-raven-traces:x86_64: PIGLIT_REPLAY_DEVICE_NAME: "vk-${GPU_VERSION}" PIGLIT_TRACES_FILE: traces-amd.yml +radv-raven-traces-restricted:x86_64: + extends: + - .lava-piglit-traces:x86_64 + - .radv-raven-test:x86_64 + - .lava-lenovo-TPad-C13-Yoga-zork:x86_64 + - .radv-collabora-rules-restricted + variables: + HWCI_START_WESTON: 1 + PIGLIT_REPLAY_ANGLE_TAG: "2023-02-10-1" + PIGLIT_TRACES_FILE: restricted-traces-amd.yml + PIGLIT_REPLAY_DEVICE_NAME: "vk-${GPU_VERSION}" + PIGLIT_REPLAY_EXTRA_ARGS: --keep-image --minio_bucket=mesa-tracie-private --jwt-file=${CI_JOB_JWT_FILE} + FDO_CI_CONCURRENT: 10 + radeonsi-raven-piglit-quick_gl:x86_64: extends: - .lava-piglit:x86_64 diff --git a/src/amd/ci/restricted-traces-amd.yml b/src/amd/ci/restricted-traces-amd.yml new file mode 100644 index 00000000000..d170196ef3e --- /dev/null +++ b/src/amd/ci/restricted-traces-amd.yml @@ -0,0 +1,36 @@ +%YAML 1.2 +--- + +traces: + angle/libangle_restricted_traces_among_us.so: + vk-radv-raven: + checksum: 07c152c22822f5a961873966066288f4 + angle/libangle_restricted_traces_asphalt_9.so: + vk-radv-raven: + checksum: be931afca12c20809a43e5358221ae11 + angle/libangle_restricted_traces_brawl_starts.so: + vk-radv-raven: + checksum: c2264076c2f0ca6b48c3bab152a65a36 + angle/libangle_restricted_traces_candy_crush_soda_saga.so: + vk-radv-raven: + checksum: c25f969b511f84948bfed315e66b88f8 + angle/libangle_restricted_traces_free_fire.so: + vk-radv-raven: + checksum: 62307dd7a10d656733bca7e0f065ac99 + angle/libangle_restricted_traces_google_maps.so: + vk-radv-raven: + checksum: 9016da5b61ea1966b8486491a1a899d5 + angle/libangle_restricted_traces_minetest.so: + vk-radv-raven: + label: [skip, broken] + checksum: 013e71013c6e2239680c9e2844b78c0b + text: missing fog, see https://gitlab.freedesktop.org/mesa/mesa/-/issues/7916 + angle/libangle_restricted_traces_mobile_legends.so: + vk-radv-raven: + checksum: 47c004fed88bed8d3d387295399f0810 + angle/libangle_restricted_traces_pubg_mobile_battle_royale.so: + vk-radv-raven: + checksum: fdedebd3817aae7d7f07891361cd5424 + angle/libangle_restricted_traces_temple_run_300.so: + vk-radv-raven: + checksum: 4fa6a73dad7d9dd747ba7cbf82aae42e