Commit Graph

3726 Commits

Author SHA1 Message Date
Valentine Burley
a08d8b4640 ci: Drop obsolete EGL skips
These tests either pass now or are correctly skipped as not supported.

Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36445>
2025-08-06 06:21:51 +00:00
Samuel Pitoiset
2091d199db ci: uprev VKCTS main to 9dd9a72b28218f1ca12777d9b73c2a85c5c60231
RADV is the only driver using main.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36546>
2025-08-05 16:12:19 +00:00
Valentine Burley
81181c27df ci: Build more drivers in debian-x86_64-asan
These will be used in upcoming jobs.

Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36348>
2025-08-05 15:07:39 +00:00
Valentine Burley
492487cd93 ci/lava: Add x86_64 ASan job templates
Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36348>
2025-08-05 15:07:39 +00:00
Eric Engestrom
8156b83942 ci: drop xorg + weston workaround now that no user is left
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36559>
2025-08-05 10:17:32 +00:00
Eric Engestrom
2b6436f971 ci: drop unnecessary rename of *.log into *.log.txt
GitLab added *.log to the allow list back in 11.4 (October 2018 [1]),
but also both GitLab's code and this workaround have been broken anyway
for a very long time now (they just serve everything as `content-type:
application/octet-stream`), so let's just drop it.

[1]: 129a60e79d

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36556>
2025-08-04 20:15:22 +00:00
Valentine Burley
9c49138b1a ci/lava: Use init-stage1 from Mesa build instead of inlining it
We can use the init-stage1 script from the Mesa build artifacts instead of
keeping a copy in the lava-trigger container and inlining it into the
LAVA job definition.

v2 (Guilherme)
* Source the `init-stage1.sh` file instead of executing it
* Avoid hardcoding the run_steps asserts, check only the core parts

Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
Co-authored-by: Guilherme Gallo <guilherme.gallo@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36549>
2025-08-04 14:31:35 +00:00
Valentine Burley
be15208cda ci/lava: Only keep structured_logger in lava-trigger container
LAVA doesn't use `custom_logger.py`.

Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36549>
2025-08-04 14:31:35 +00:00
Eric Engestrom
79c0c828c7 ci: document image tag to bump for rust build changes
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36485>
2025-08-04 13:14:37 +00:00
Eric Engestrom
8e71665468 ci: dedupe weston setup
We're doing almost the same thing 3 times; let's put that in a script.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36485>
2025-08-04 13:14:37 +00:00
Eric Engestrom
62857757a9 ci: cleanup weston invocations
Specifically, set WAYLAND_DISPLAY only once and reuse the var, don't
export it to weston itself (even though it's ignored because we
explicitly select the headless backend instead of auto), use long option
names for added clarity, and replace deprecated `--use-gl` with
`--renderer=gl`.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36485>
2025-08-04 13:14:37 +00:00
Eric Engestrom
9ea55d12f6 ci: uprev vkd3d to fix some nvk tests
6be7810766...f0a3820468

The last commit fixes a vkd3d behaviour that's out of spec but is known to work
on AMD hardware to only do that on AMD, thereby fixing at least NVK.

Unfortunately, this also brings a bunch of new failures.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36504>
2025-08-04 10:35:11 +00:00
Eric Engestrom
5fd71adbd1 ci/vkd3d: fix "unexpected results" check
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36504>
2025-08-04 10:35:11 +00:00
Ritesh Raj Sarraf
1e92d6f369 ci: Add test streaming-texture-leak to all-skips
even with a 256x256 map, it is over 1 GiB of texture memory
allocated. Also, individually, it was disabled in most of
the tests as it is either too slow or results in an OOM

Signed-off-by: Ritesh Raj Sarraf <ritesh.sarraf@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36493>
2025-08-04 09:57:09 +00:00
Ritesh Raj Sarraf
4af3dcd969 ci: Update to Linux 6.16 for gfx-ci
Signed-off-by: Ritesh Raj Sarraf <ritesh.sarraf@collabora.com>

ci: Downgrade to Linux 6.14 for venus-lavapipe jobs

In Linux 6.16 (and possibly 6.15 as well), the virtio gfx device
initialization seems to have regressed, resulting in device initialization
failure.

```
deqp-runner 0.20.3
+ deqp-runner suite --suite /builds/RickXy/mesa/install/deqp-venus.toml --output /builds/RickXy/mesa/results --skips /builds/RickXy/mesa/install/all-skips.txt /builds/RickXy/mesa/install/venus-skips.txt --flakes /builds/RickXy/mesa/install/venus-flakes.txt --testlog-to-xml /deqp-tools/testlog-to-xml --fraction-start 1 --fraction 60 --jobs 16 --baseline /builds/RickXy/mesa/install/venus-fails.txt
Error: Failed to invoke dEQP for dEQP-VK.info.device:
stdout:
Writing test log into /builds/RickXy/mesa/results/dEQP-VK.info.device
dEQP Core 3299a07b86cf0b15f86d1a441e323e515b15f255 (0x3299a07b) starting..
  target implementation = 'Default'
stderr:
MESA-VIRTIO: debug: one of required kernel params (4 or 9) is missing
FATAL ERROR: vk.enumeratePhysicalDevices(instance, &numDevices, nullptr): VK_ERROR_INITIALIZATION_FAILED at vkQueryUtil.cpp:83
```

Signed-off-by: Ritesh Raj Sarraf <ritesh.sarraf@collabora.com>

ci: Drop the test from the fail list

It is reported to pass with Linux 6.16

```
Unexpected results:
07:33:07.167:   KHR-GL46.sparse_texture2_tests.UncommittedRegionsAccess_texture_cube_map_r32i,Crash
07:33:07.167:   spec@!opengl 1.1@streaming-texture-leak,UnexpectedImprovement(Pass)
```

Signed-off-by: Ritesh Raj Sarraf <ritesh.sarraf@collabora.com>

ci: Update zink-avn-adl flakes list

Signed-off-by: Ritesh Raj Sarraf <ritesh.sarraf@collabora.com>

ci: Add flake to zink-anv-adl skip list

Signed-off-by: Ritesh Raj Sarraf <ritesh.sarraf@collabora.com>

ci: Add api@clgetdeviceinfo to Intel fails list

This api call is failing for Intel as well, like many of the other
types.

Signed-off-by: Ritesh Raj Sarraf <ritesh.sarraf@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36493>
2025-08-04 09:57:09 +00:00
LingMan
6c7084357d mesa: Bump required Rust version to 1.82
Firefox ESR requires Rust 1.82 since version 140. Thus, this update
is in line with our Rust update policy.

Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Reviewed-by: Karol Herbst <kherbst@redhat.com>
Reviewed-by: Eric Engestrom <eric@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36526>
2025-08-03 10:16:20 +00:00
LingMan
b364732502 ci/rust: Drop date from Rust release channel selection
For stable Rust, specifying the patch version already uniquely identifies a toolchain build. Specifying the date would only be required for nightly releases.

Reviewed-by: Eric Engestrom <eric@igalia.com
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36526>
2025-08-03 10:16:19 +00:00
Corentin Noël
a29b9e47b0 ci/piglit: Allow traces content-type to be binary/octet-stream
This seems to be the case for some traces like https://s3.freedesktop.org/mesa-tracie-results/mesa/mesa/0e6cc731faf4f2d6c1765f369535ce0d.png

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36511>
2025-08-01 08:31:26 +00:00
Collabora's Gfx CI Team
f99a60f499 Uprev Piglit to c3a3e29d59e0972650a6d30d20de930c87739c14
0980079dcf...c3a3e29d59

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36340>
2025-07-31 21:05:20 +00:00
Eric Engestrom
dd15dbae4b ci/prepare-artifacts: turn file copies into a loop
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36354>
2025-07-30 23:18:11 +00:00
Eric Engestrom
e7102511b0 ci/prepare-artifacts: drop redundant copy
`fossilize-runner.sh` is already matched by `*-runner.sh`.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36354>
2025-07-30 23:18:11 +00:00
Eric Engestrom
bf87c6522b ci/prepare-artifacts: move git version dump out of static file copy block
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36354>
2025-07-30 23:18:10 +00:00
Eric Engestrom
cd89b49f6a ci/deqp-runner: fix path to install folder
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36354>
2025-07-30 23:18:10 +00:00
Eric Engestrom
a484a2d868 ci-tron: set SCRIPTS_DIR where its path is defined
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36354>
2025-07-30 23:18:02 +00:00
Eric Engestrom
b53723d2a4 ci-tron: cleanup redundancy in artifacts exclude variable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36354>
2025-07-30 23:18:02 +00:00
Eric Engestrom
e95e8fca2b ci-tron: set pipefail to show the correct error message when failing to download the install tarball
This requires `bash` as posix `sh` doesn't have that option.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36354>
2025-07-30 23:18:01 +00:00
Mike Blumenkrantz
0b82452b19 ci: disable xwm decorations in weston
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36320>
2025-07-25 00:43:08 +00:00
Guilherme Gallo
c25b14fa23 ci/bare-metal: Fix exit code variable
`bm-init.sh` executes `init-stage1.sh` and then an `export`, but the
latter command overwrite the exit code `$?`, so we need to put the first
exit code into a variable.

Signed-off-by: Guilherme Gallo <guilherme.gallo@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36356>
2025-07-24 19:35:25 +00:00
Paolo Bonzini
8ea232a9ae meson: rename Rust subprojects to NAME-SEMVER-rs
Use the convention for Rust subprojects that was adopted by Meson 1.5.0
and newer.

Distros would prefer to avoid vendored crate sources, and instead use
local sources from e.g. /usr/share/cargo/registry.  While Meson does not
support a local registry, it can be emulated with MESON_PACKAGE_CACHE_DIR.

However, because the distro might not be using the exact version of the
package, but only one that has the same semver, packagers need to add
some hacks to rewrite the wrap files.  For example, in Fedora:

    export MESON_PACKAGE_CACHE_DIR="%{cargo_registry}/"
    # So... Meson can't actually find them without tweaks
    %define inst_crate_nameversion() %(basename %{cargo_registry}/%{1}-*)
    %define rewrite_wrap_file() sed -e "/source.*/d" -e "s/%{1}-.*/%{inst_crate_nameversion %{1}}/" -i subprojects/%{1}.wrap
    %rewrite_wrap_file proc-macro2
    %rewrite_wrap_file quote
    %rewrite_wrap_file syn
    %rewrite_wrap_file unicode-ident
    %rewrite_wrap_file paste

Having a common convention for the name of Rust wraps makes it possible
to perform this transformation with a script without listing
the wraps one by one, and to share the script across multiple packages
(which will be useful when QEMU starts using Rust in a similar way to Mesa).

For an example of such a script, see
https://lore.kernel.org/r/20250722083507.678542-1-pbonzini@redhat.com/.

Acked-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Reviewed-by: Gurchetan Singh <gurchetansingh@chromium.org>
Tested-by: Gurchetan Singh <gurchetansingh@chromium.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36284>
2025-07-24 17:52:34 +00:00
Valentine Burley
93a45abcf4 radeonsi/ci: Convert Fluster job to deqp-runner suite
Drop the custom fluster-runner.sh script and add a deqp-runner suite for
the `radeonsi-raven-vaapi-fluster` job.

Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36316>
2025-07-24 15:04:38 +00:00
Eric Engestrom
f4596e7828 ci/lava: fix heredoc-in-yaml syntax
Fixes: 02d07f3380 ("ci/lava: Add SSH job definition")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36239>
2025-07-24 08:40:44 +00:00
Eric Engestrom
f4166ab1e1 ci: fix rustfmt job rules (one more case)
f065c2f0ac actually always triggers the rule it adds because
that commit itself changes one of these files, so the case where none of
these files are changed was not actually tested.

The two options are to drop the `changes:` line from that commit, to
make every staging pipeline run that job, or to add the missing
"no changes" corresponding rule, which this commit does, which aligns
with the "run when files changed, don't run otherwise" behaviour of the
other rules above.

Fixes: f065c2f0ac ("ci: fix rustfmt job rules")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36306>
2025-07-23 11:20:19 +00:00
Antonio Ospite
8f2715c333 ci/android: fix exit code from android-cts-runner.sh and android-deqp-runner.sh
The android-cts-runner.sh and android-deqp-runner.sh scripts are usually
sourced from android-runner.sh which then propagates the EXIT_CODE value
set in the scripts.

However this scheme does not cover the case where android-cts-runner.sh
and android-deqp-runner.sh are called directly, in that case they will
not return the previously saved EXIT_CODE appropriately in the last
command.

Fix that, allowing developers to call the scripts directly with the
intended behavior.

After this change android-runner.sh does not need to know about the
EXIT_CODE variable anymore, which was a slight layering violation, but
it can just rely on the exit code of the last executed commands.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36286>
2025-07-22 20:49:12 +00:00
Julian Orth
62f855429a ci: build and install native libwayland
If the same image is used for both cross and native builds, the native
build needs to be installed as well.

Signed-off-by: Julian Orth <ju.orth@gmail.com>
Fixes: cf64ca6a0c ("ci: enable wayland platform in more debian builds")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36191>
2025-07-22 10:41:00 +00:00
Eric Engestrom
f065c2f0ac ci: fix rustfmt job rules
Specifically, fe8bc3f23e made the "default" case `manual`
instead of `never`, which is causing all staging pipelines to have that
job regardless of any file `changes`, and always `manual` making it
block pipelines.

Let's make it automatic for upstream pipelines (ie. staging and
push-to-main), and only run on file `changes`.

Fixes: fe8bc3f23e ("ci: Only run rustfmt when necessary")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36260>
2025-07-22 07:09:28 +00:00
Collabora's Gfx CI Team
46cbe95ccf Uprev Piglit to 0980079dcfb5adbad873d88e00181268f55cb8ef
a0a27e528f...0980079dcf

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35625>
2025-07-18 15:33:14 +00:00
Collabora's Gfx CI Team
5f13ab3ec3 Uprev ANGLE to 6a04a50f98cac71b25464d10289ce7a013841caf
c39f4a5c55...6a04a50f98

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35482>
2025-07-18 00:10:15 +00:00
Valentine Burley
5c5c464988 ci/angle: Update gn arg to avoid warning message
After this change
https://chromium-review.googlesource.com/c/chromium/src/+/6547915,
using android32_ndk_api_level and android64_ndk_api_level gn args
will results in a warning message:

WARNING Build argument has no effect.
android32_ndk_api_level = 26
                          ^-
Did you mean "android_ndk_api_level"?

Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35482>
2025-07-18 00:10:02 +00:00
Mike Blumenkrantz
10602f2ddd ci: bump VVL to 1.4.322ish
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35791>
2025-07-17 15:28:21 +00:00
Valentine Burley
b7f1f40bf4 ci: Always save the artifacts for performance traces
We need the job artifacts in all cases to gather performance data.
Since commit b723bc80d2, we were only saving them on failures.

Fixes: b723bc80d2 ("ci/lava: inherit .piglit-traces-test in .lava-piglit-traces and deduplicate configs")

Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36195>
2025-07-17 14:55:41 +00:00
Vignesh Raman
54fcb0e443 ci/init-stage1: avoid duplicate mounts
Check if filesystems are mounted before attempting to mount them,
and use mkdir -p to prevent errors if directories already exist.

Signed-off-by: Vignesh Raman <vignesh.raman@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35961>
2025-07-17 13:16:56 +00:00
Vignesh Raman
89ff124263 ci/lava: bump ALPINE_X86_64_LAVA_TRIGGER_TAG
Bump ALPINE_X86_64_LAVA_TRIGGER_TAG tag to rebuild the lava-trigger
container.

Signed-off-by: Vignesh Raman <vignesh.raman@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35961>
2025-07-17 13:16:56 +00:00
Vignesh Raman
c1898908a8 ci/lava: Move lava_job_submitter tests to lava folder
The `.gitlab-ci/tests/` directory contains LAVA-specific tests, not
general test code. To avoid confusion with `.gitlab-ci/test/`, move it
to `.gitlab-ci/lava/`.

Signed-off-by: Vignesh Raman <vignesh.raman@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35961>
2025-07-17 13:16:56 +00:00
Vignesh Raman
d67436c7ec ci/lava: make rootfs shell prompt configurable
Add support for setting rootfs shell prompt. This is optional and
defaults to "lava-shell:" if not specified.

Signed-off-by: Vignesh Raman <vignesh.raman@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35961>
2025-07-17 13:16:56 +00:00
Vignesh Raman
75d1ac4b0b ci/lava: add main() function to fix entry point
Signed-off-by: Vignesh Raman <vignesh.raman@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35961>
2025-07-17 13:16:56 +00:00
Vignesh Raman
38039e00e7 ci/lava: default CI_JOB_TIMEOUT to 3600 if unset
Prevents a TypeError when CI_JOB_TIMEOUT is not set by defaulting
to 3600 seconds (60 minutes).

Signed-off-by: Vignesh Raman <vignesh.raman@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35961>
2025-07-17 13:16:56 +00:00
Valentine Burley
0bf2e3c712 ci/lava: Use UART for non-Chromebooks
Some Chromebooks have unreliable UART, so we fall back to SSH for them.
However, SSH setup adds a 10-15s overhead, so we now restrict its usage
to devices with the "depthcharge" boot method (i.e., Chromebooks).

Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35936>
2025-07-16 14:12:53 +00:00
Eric Engestrom
8d61c2751f ci: move script: override from .piglit-traces-test to llvmpipe-traces
This is already being set as needed everywhere else, and would cause
issues in future work.

Use the relative `install/` path for `HWCI_TEST_SCRIPT` as that's
supported by both HW runners and FDo runners.
A separate MR will fix the `/install/` vs `install/` mess.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36145>
2025-07-16 12:54:06 +00:00
Eric Engestrom
b723bc80d2 ci/lava: inherit .piglit-traces-test in .lava-piglit-traces and deduplicate configs
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36145>
2025-07-16 12:54:06 +00:00
Eric Engestrom
5ebe02db30 ci/piglit: provide default results file name
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36145>
2025-07-16 12:54:06 +00:00