Commit Graph

689 Commits

Author SHA1 Message Date
Michel Dänzer
26d2ffeb20 ci: Set GALLIVM_PERF=nopt,no_filter_hacks for llvmpipe-gles2
Gives us 48 more passed tests, and possibly slightly shorter job times.

Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Acked-by: Daniel Stone <daniels@collabora.com>
Acked-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4986>
2021-02-09 16:44:08 +00:00
Michel Dänzer
6e53e9df02 ci: Set GALLIVM_PERF=no_filter_hacks for llvmpipe-piglit-quick_gl
Gives us 13 more passed tests.

(GALLIVM_PERF=nopt breaks some tests here)

Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Acked-by: Daniel Stone <daniels@collabora.com>
Acked-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4986>
2021-02-09 16:44:08 +00:00
Michel Dänzer
a8061d0384 ci: Set GALLIVM_PERF=no_filter_hacks for llvmpipe-piglit-quick_shader
Gives us 1 more passed test.

(GALLIVM_PERF=nopt breaks some tests here)

Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Acked-by: Daniel Stone <daniels@collabora.com>
Acked-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4986>
2021-02-09 16:44:08 +00:00
Tomeu Vizoso
e8246ad5f4 ci: Move container files into their own dir
To be more consistent and to declutter the .gitlab-ci dir.

Signed-off-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Acked-by: Eric Anholt <eric@anholt.net>
Acked-by: Michel Dänzer <mdaenzer@redhat.com>
Reviewed-by: Andres Gomez <agomez@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8757>
2021-02-08 14:19:06 +00:00
Erik Faye-Lund
ae8f9584f4 CI: always expose docs artifacts
This makes it easier to preview docs changes in merge-requests. Also
make sure we build the docs right away, rather than waiting for when
marge merges. This allows us to see the artifacts right away.

Reviewed-by: Michel Dänzer <mdaenzer@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8398>
2021-02-08 11:39:10 +00:00
Eric Anholt
e91e1b45cb ci/freedreno: Run a3xx gles3 in parallel and increase coverage.
It seems that recent fixes have made its results stable (other than
existing flakiness in texturegrad), so we can use all the CPUs and a
couple more boards and get more coverage.

Acked-by: Daniel Stone <daniel@fooishbar.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8787>
2021-02-07 21:48:56 -08:00
Eric Anholt
ec9d56c3fa ci/freedreno: bump VK coverage to 1/4 of the CTS.
With the runner fixes, we were down to 2 minutes of boot time and 2
minutes of CTS time for a total of 4 minutes.  We've got plenty of time
budget now to increase our coverage.

Acked-by: Daniel Stone <daniel@fooishbar.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8787>
2021-02-07 21:48:54 -08:00
Eric Anholt
48dd9b7e34 ci/deqp: Bump runner to 0.5.1 for recent runtime perf improvements.
3 commits in 0.5.0:

- 20-40s savings on many of our CI runs by dropping the clever test size
  scaling code.

- Even bigger savings (especially on deqp-vk runs) by increasing maximuim
  test group size (~1/4 of runtime was spawning deqp on cheza, that cost
  is cut by ~75%)

- No more needing to manually set MESA_DEBUG=silent

2 commits in 0.5.1:

- Fixed automatic thread pool sizing to keep all CPUs busy (thanks for
  catching that Bas!).

- Automatically size down test groups on short test lists and many CPUs,
  so split the list evenly between CPUs (such as on freedreno -options
  jobs).

Acked-by: Daniel Stone <daniel@fooishbar.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8787>
2021-02-07 21:42:39 -08:00
Michel Dänzer
c391c32af2 ci: Update to newer ci-fairy
To get the fix for
https://gitlab.freedesktop.org/freedesktop/ci-templates/-/issues/29 .

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8690>
2021-02-05 17:17:59 +00:00
Michel Dänzer
366fb28dac ci: Fix MESA_TEMPLATES_COMMIT value
The intention was to set it to the commit used for debian.yml, but I
accidentally set it to the ci-fairy.yml commit instead.

v2:
* While we're at it, put two dashes between the base tag and the
  ci-templates commit hash, making them easier to tell apart.
v3:
* While we're at it, fix the year of some recently bumped tags.

Fixes: 48f78dfd1a "ci: Define global variable MESA_TEMPLATES_COMMIT
                     for ci-templates commit"

Reviewed-by: Eric Anholt <eric@anholt.net> # v2
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8690>
2021-02-05 17:17:59 +00:00
Michel Dänzer
14bafbba9b ci: Run 'time' in the background and propagate signals to test process
Simply exec'ing time didn't produce any output from it when a test
timed out.

Fixes: 35f59e14f8 "ci: Use GNU time as meson test wrapper"
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8830>
2021-02-04 09:36:49 +00:00
Eric Anholt
23350b5939 ci/freedreno: Do our piglit runs against Xorg.
We were using surfaceless, which misses out on some useful coverage we'd
like to have in the GLX/EGL piglit tests, but more importantly prevented
many traces from running.

Reviewed-by: Daniel Stone <daniel@fooishbar.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8727>
2021-02-01 18:32:01 +00:00
Eric Anholt
d4855d2930 ci/lava+baremetal: Add an xserver to the root fs.
We want to be able to test GLX and EGL on real hardware, and we can't do
that with just the surfaceless backend.  Bringing up the xserver is pretty
easy.

Reviewed-by: Daniel Stone <daniel@fooishbar.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8727>
2021-02-01 18:32:01 +00:00
Eric Anholt
2af6b53588 ci/freedreno: Use the http cache for artifacts downloads, too.
The gitlab artifacts handling has been slow in the past as we hit
gitlab.fdo from multiple runners, and it costs fd.o egress bandwidth.  Use
the local http cache against the packet.net minio to cut that downloads
cost.

Closes: #3249
Reviewed-by: Daniel Stone <daniel@fooishbar.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8727>
2021-02-01 18:32:01 +00:00
Eric Anholt
18bfb74292 ci/freedreno: Drop pointless GIT_STRATEGY setting for a630.
It's already in place due to extending from .test.

Reviewed-by: Daniel Stone <daniel@fooishbar.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8727>
2021-02-01 18:32:01 +00:00
Michel Dänzer
35f59e14f8 ci: Use GNU time as meson test wrapper
This will hopefully give us more information about why some tests are
intermittently timing out.

Only in build jobs using the x86_build docker image for now, since
those are where we're currently seeing most such timeouts. But may
expand this later if it provides the expected benefits.

v2:
* Add comment about why we test for and use /usr/bin/time explicitly.

Acked-by: Eric Engestrom <eric@engestrom.ch> # v1
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8776>
2021-02-01 11:55:56 +00:00
Benjamin Tissoires
8deca5a72e CI: windows: Force using LLVM 12
LLVM is moving to the 13 release, but LLVM-SPIRV is still so in the past.
Given that LLVM 12.0.0 is still not out (we are at 12.0.0-rc1 today),
use the `release/12.x` branch for LLVM.

We should also tag LLVM-SPIRV, but... it seems that they haven't caught up
yet, so keep using the master branch, but add a note for a future
committer.

Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Reviewed-by: Daniel Stone <daniel@fooishbar.org>
Signed-off-by: Benjamin Tissoires <benjamin.tissoires@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8740>
2021-01-29 17:54:56 +00:00
Benjamin Tissoires
a69ab2ae36 CI: windows: split the layers to meet new registry requirements
The new registry caching in place for registry.fd.o can not handle layers
bigger than 5 GB. The last layer we used to build on windows was 5.2 GB,
meaning that the upload would fail.

Split the layers by calling multiple `RUN`, hoping that the size will be
roughly split between those steps if we have a special layer for VS2019.

Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Reviewed-by: Daniel Stone <daniel@fooishbar.org>
Signed-off-by: Benjamin Tissoires <benjamin.tissoires@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8740>
2021-01-29 17:54:56 +00:00
Benjamin Tissoires
0ef1f418bb CI: windows: augment the timeout of building the windows container
https://gitlab.freedesktop.org/mesa/mesa/-/jobs/6898838 failed at
uploading the containers but got kicked out right before being able to
give us a valid error.

Bump the timeout for windows container builds, to not have this
unfortunate situation.

Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Reviewed-by: Daniel Stone <daniel@fooishbar.org>
Signed-off-by: Benjamin Tissoires <benjamin.tissoires@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8740>
2021-01-29 17:54:56 +00:00
Eric Anholt
b308d56e20 ci: Update baremetal kernel to 5.11-rc5 plus patches.
The dr_mode hack is now folded into the git tree.  The uprev brings in a
shrinker fix for msm and a fix for the GPU_SET OOB messages on cheza
(possibly involved in piglit flakes).

Reviewed-by: Rob Clark <robdclark@chromium.org>
Reviewed-by: Christian Gmeiner <christian.gmeiner@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8768>
2021-01-29 01:30:46 +00:00
Eric Anholt
ced77af3fd ci/freedreno: Make a630 piglit_shader run a manual run, too.
We haven't been able to stabilize the remaining flakes (scattered through
a bunch of innocuous-looking tests), so disable it until we can fix it or
replace the piglit runner with one that can handle flakes.

Closes: #4170
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8747>
2021-01-27 23:06:36 +00:00
Eric Anholt
c90ef5bcf4 ci/freedreno: Ban more flaky clip-enables tests.
Same cause as vs-clip-vertex-enable, presumably.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8744>
2021-01-27 21:19:41 +00:00
Eric Anholt
4fdd8b09bd ci/freedreno: Ban vs-clip-vertex-enables which flakes in CI.
It's reliably failing on its own, but has shown up as the top flake in CI.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8722>
2021-01-26 19:17:27 +00:00
Juan A. Suarez Romero
be33083141 ci/vc4: Add piglit job
This adds a couple of jobs to execute piglit testsuite in VC4
(quick_shader and quick_gl profiles).

It is defined as a manual test as it takes time to execute them.

v2:
 - Add more excluded tests (Eric)

Signed-off-by: Juan A. Suarez Romero <jasuarez@igalia.com>
Acked-by: Andres Gomez <agomez@igalia.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8702>
2021-01-26 09:45:29 +00:00
Juan A. Suarez Romero
a825919dc6 ci/vc4: rename stage to Broadcom
It fits better with what other drivers has done.

Signed-off-by: Juan A. Suarez Romero <jasuarez@igalia.com>
Acked-by: Andres Gomez <agomez@igalia.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8702>
2021-01-26 09:45:29 +00:00
Eric Anholt
f180bf3e03 ci: Add a fractional deqp run of softpipe with asan enabled.
This should help us avoid landing memory leaks (and some buffer overflows)
throughout the GL stack.  I put the asan lib in x86_test-base because
we'll want asan for lavapipe, too.

This requires keeping debug symbols for the asan drivers in the artifacts,
as otherwise you can't do much with the backtraces it produces.

Closes: #3726
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8530>
2021-01-25 18:50:26 +00:00
Rob Clark
f0b0095fec ci/freedreno/a6xx: Skip vs-output-array-vec2-index-wr-before-gs
This one test seems to be destroying the world, and causing massive
flakeyness, and is generally more a recovery/GMU stress test than
anything.

See #4159

Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8659>
2021-01-23 10:22:31 -08:00
Juan A. Suarez Romero
8588fb65d6 vc4/ci: Replace expect script by python script
Replace the expect-based script to turn on/off the Raspberry Pi devices
using a python-based script.

v2:
 - Fix small nitpicks (Juan)
 - Limit line length (Andres)

v3:
 - Bump image tags (Eric, Andres)

v4:
 - Bump image tags (Eric)

Signed-off-by: Juan A. Suarez Romero <jasuarez@igalia.com>
Acked-by: Andres Gomez <agomez@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8362>
2021-01-23 05:35:24 +00:00
Michel Dänzer
d31f2200b3 ci: Enable process isolation for softpipe & freedreno piglit jobs
Disabling process isolation causes a random set of tests to be
spuriously skipped. The set of skipped tests can change when piglit is
rebuilt (even from the same Git commit), which can make docker image
rebuilds painful. (Not to mention the reduced testing coverage due to
the skipped tests)

One downside of this change is that the arm64_a630_piglit_shader job
now takes almost 10 minutes.

v2:
* Change arm64_a530_piglit_shader job as well, but make it run manually
  on branches of forked repositories only, since it takes almost 20
  minutes now. (Eric Anholt)

Reviewed-by: Eric Anholt <eric@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8611>
2021-01-22 19:35:06 +00:00
Andres Gomez
0773cd33c2 ci: correct the trace image URLs in the piglit summary
Fixes: 09429fa85b ("ci: add piglit replay jobs and remove tracie ones")
Signed-off-by: Andres Gomez <agomez@igalia.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8531>
2021-01-21 20:33:23 +00:00
Eric Anholt
3884307b69 ci/piglit: Upgrade to a newer piglit in our containers.
Pulls in test fixes for rasterpos on softpipe and for
simple-barrier-atomics on freedreno.  Note that many xfail-vs-xskips end
up changing, because apparently the

Reviewed-by: Michel Dänzer <mdaenzer@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8499>
2021-01-19 22:06:55 +00:00
Eric Anholt
c03b6780f7 Revert "ci: Disable the freedreno farm, which went down last night."
Networking broke on a reboot or something, fixed the broken setting and
it's back up.

This reverts commit ff67898daf.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8454>
2021-01-12 21:28:58 +00:00
Adam Jackson
55ccc9eca5 ci: Add a few more drivers to the cross builds
This is mostly to get additional -Werror coverage to avoid introducing
unforced ILP32 or big-endian errors. i386 adds lavapipe, r600, nouveau,
zink, and all the classic drivers. ppc64le adds lavapipe and zink, and
also adds -Werror for symmetry with the other cross builds. s390x also
adds lavapipe and zink.

Reviewed-by: Eric Anholt <eric@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8394>
2021-01-10 21:15:46 +00:00
Eric Anholt
ff67898daf ci: Disable the freedreno farm, which went down last night.
We're debugging it now, but let merges flow until then.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8395>
2021-01-08 19:21:09 +00:00
Danylo Piliaiev
2b29ec7ca4 freedreno: Enable GLSL 3.30, updating us to GL 3.3 contexts
All necessary features are already supported.

GL33 CTS failures:
 KHR-GL33.texture_swizzle.smoke - timeouts, passes otherwise
 KHR-GL33.cull_distance.coverage - see
  https://gitlab.khronos.org/Tracker/vk-gl-cts/-/issues/2673
  fix is not in the public repo yet.

Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8270>
2021-01-06 15:54:54 +00:00
Jesse Natalie
ecac89b732 CI: Enable d3d12 driver for Linux CI builds
Acked-by: Daniel Stone <daniels@collabora.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8251>
2021-01-04 23:03:01 +00:00
Jesse Natalie
7452a96e91 CI: Install DirectX-Headers package for x86 container
Acked-by: Daniel Stone <daniels@collabora.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8251>
2021-01-04 23:03:01 +00:00
Eric Anholt
9ef2c44ce6 ci: Add a530 and a630 piglit runs.
These bring a whole lot of new coverage to these drivers, since dEQP is
bad at desktop GL feature coverage around early GL 3.x.  piglit also gets
at a lot of MSAA, fast clearing, and texture layout issues that dEQP
doesn't do much with.

Reviewed-by: Christian Gmeiner <christian.gmeiner@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7370>
2021-01-02 02:43:21 +00:00
Eric Anholt
cab48ba9f5 ci/bare-metal: Pass through FDO_CI_CONCURRENT on bare-metal runners.
I've set it up in the gitlab-runer config on all the freedreno boards.
This means that for piglit, where the run.sh always choose either this
variable or 4 threads otherwise, we'll have the right number of parallel
tasks.

Reviewed-by: Christian Gmeiner <christian.gmeiner@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7370>
2021-01-02 02:43:21 +00:00
Eric Anholt
4d810df996 ci/bare-metal: Drop extra DEQP_PARALLEL settings.
The .baremetal_test sets DEQP_PARALLEL: 0 (number of CPUs), so existing
DEQP tasks should already be auto-configured.  This means we can drop
a530's single-threaded overrides, since it's non-SMP.

Reviewed-by: Christian Gmeiner <christian.gmeiner@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7370>
2021-01-02 02:43:21 +00:00
Christian Gmeiner
12647ac193 ci/bare-metal: build full piglit for baremetal ARM targets.
ARM64 had it for traces only, upgrade it to a full build so we can test
a630.  We also add it for armhf, as we'll want it on both rpi and etnaviv.

Bumped the LAVA tag as well, since the script changes a bit and it does
impact the final image (even if we aren't pulling in full piglit there
yet).  Note I also had to drop the "v" on the tarring of their rootfs, as
the verbosity on baremetal was exceeding job log size.

Signed-off-by: Christian Gmeiner <christian.gmeiner@gmail.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7370>
2021-01-02 02:43:21 +00:00
Christian Gmeiner
886a555e80 ci: build mesa with gbm
We need gbm support for piglit.

Signed-off-by: Christian Gmeiner <christian.gmeiner@gmail.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7370>
2021-01-02 02:43:21 +00:00
Christian Gmeiner
ea764c9c51 ci: build ARM mesa with X11 OpenGL support
I want to run piglit with baremetal ci and for this opengl support
is needed.

Reviewed-by: Eric Anholt <eric@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7370>
2021-01-02 02:43:21 +00:00
Eric Anholt
9f213238b8 ci/softpipe: Update the comment about the rasterpos flake.
The noted fix landed, but a test fix was needed.

Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8275>
2020-12-31 09:43:44 -08:00
Eric Anholt
01d62dcb28 ci/softpipe: Ban glx-multithread-texture, too.
This one also flakes on us.

Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8275>
2020-12-31 09:43:18 -08:00
Eric Anholt
30caea2820 ci/softpipe: Skip flaky triangle-rasterization-overdraw.
It runs a different test each run based on current time, and fails
occasionally.  Until the test can get fixed, remove it.

Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8275>
2020-12-31 09:43:09 -08:00
Eric Anholt
28a202f2d3 ci/softpipe: Re-enable GS tests that had been banned for being flaky.
Now that the flakes should be fixed, turn the coverage on.

Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8277>
2020-12-30 21:54:06 -08:00
Eric Anholt
02328637c1 freedreno: Enable GLSL 1.50, updating us to GL 3.2 contexts.
We have been advertising 3.1, which waffle has issues creating contexts
for, causing coverage (and performance!) issues in piglit.  We should
support all the necessary features already.

Some new failures are caught by the 3.2 CTS, but they look like they're
existing issues simply not covered by the minimal GL 3.0 CTS.

Fixes: #3037
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8255>
2020-12-29 19:37:52 +00:00
Eric Anholt
358d5a270d ci/softpipe: Include a piglit run.
It's been regressed a couple of times recently, so let's try to make sure
it doesn't happen again.  The setup here is mostly like llvmpipe-quick-gl,
but using quick_gl+quick_shader together, and a few more spectacularly
long-running tests dropped.  I also excluded a bunch of unsupported
extensions, to minimize the size of the skip list checked into the tree
(it's still 200k, though).

The unfortunate exclusions in here are fp64 and int64 -- most of the
piglit tests for them don't run because softpipe is still GL3.3, and it's
an egregious number of skips to add to the checked in list.

Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8068>
2020-12-27 10:48:00 -08:00
Eric Anholt
cb5ee80ee8 ci/piglit: Include the updated piglit results list in the job results.
If you're standing up a new piglit CI, you're going to want it.

Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8068>
2020-12-27 10:47:57 -08:00
Eric Anholt
302b4f7724 ci/deqp: Upgrade the runner, enable junit output.
I moved QPA-to-XML conversion to the runner, so Mesa CI (and developers!)
don't need to do quite so much in bash.  I also made it clean up caselist
.qpa files since nobody ever wants them and we deleted them anyway.  This
cleans up a ton of the job log output.

Additionally, I added a subcommend to turn the .csv into a junit output
that we can expose to gitlab.  Now, the pipeline's status page will report
the failed testcases, and the "detail" button will give you a link to the
.XML to view for the failure.  (We don't report all testcases because it's
too much load for the gitlab server).  Note that this will 404 for the
LAVA runners for now, as they don't retain artifacts in gitlab (the plan
is to eventually have them minio upload the artifacts).

This uprev also includes a deqp output parsing fix, resulting in us
catching a couple more failures in some drivers.

Reviewed-by: Christian Gmeiner <christian.gmeiner@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8206>
2020-12-23 20:48:12 +00:00
Eric Anholt
35e9143428 ci/deqp: Move .shader_cache artifacts exclusion to the yml.
Less noise in the job log when we want to be highlighting deqp-runner's
output.

Reviewed-by: Christian Gmeiner <christian.gmeiner@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8206>
2020-12-23 20:48:12 +00:00
Andres Gomez
54bdec63ef ci: add piglit job to baremetal and remove tracie ones
v2:
  - Squashed the commit to remove tracie jobs (Eric).

v3:
  - Rename *-piglit-traces jobs with *-traces (Eric).

Signed-off-by: Andres Gomez <agomez@igalia.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6388>
2020-12-22 18:31:01 +00:00
Andres Gomez
8f34b9471f ci: refactor arm64 jobs in preparation for piglit addition
v2:
  - Rename the ".arm64-deqp-test-vk" template as
    ".arm64-deqp-test-freedreno-vk" (Eric).

v3:
  - Rename the ".arm64-test" template as ".freedreno-test" (Eric).
  - Rename the ".arm64-deqp-test" template as
    ".baremetal-deqp-test" (Eric).
  - Rename the ".arm64-deqp-test-freedreno-vk" template as
    ".baremetal-deqp-test-freedreno-vk".

Signed-off-by: Andres Gomez <agomez@igalia.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6388>
2020-12-22 18:31:01 +00:00
Andres Gomez
654bfb0012 ci: build piglit inside baremetal and LAVA's rootfs
v2:
  - Updated the ci-fairy commit to use.

Signed-off-by: Andres Gomez <agomez@igalia.com>
Reviewed-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6388>
2020-12-22 18:31:01 +00:00
Andres Gomez
3b5bc2f10d ci: move API specification to driver instead of test suite
Signed-off-by: Andres Gomez <agomez@igalia.com>
Reviewed-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6388>
2020-12-22 18:31:01 +00:00
Andres Gomez
5f6f84bf81 ci: move general build commands to their own section
The STRIP_CMD env var is used in several build scripts, not just by
dEQP.

Also, we want to have the rootfs destination directory created so it
also exists for builds that only move directory trees in there.

Signed-off-by: Andres Gomez <agomez@igalia.com>
Reviewed-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6388>
2020-12-22 18:31:01 +00:00
Andres Gomez
8860fa931e ci: add Vulkan piglit traces jobs and remove tracie ones
v2:
  - Rename *-piglit-traces jobs with *-traces.

Signed-off-by: Andres Gomez <agomez@igalia.com>
Reviewed-by: Tomeu Vizoso <tomeu.vizoso@collabora.com> [v1]
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6388>
2020-12-22 18:31:01 +00:00
Andres Gomez
09429fa85b ci: add piglit replay jobs and remove tracie ones
Along the way, modify the piglit run script and refactor the way
piglit jobs are generated.

v2:
  - Squashed the commit to remove tracie jobs (Eric).

v3:
  - Extend information in the comments about the need to use a
    running X server for replaying with Vulkan (Tomeu).
  - Do actually fail if the upload doesn't work (Tomeu).

v4:
  - Rename *-piglit-traces jobs with *-traces.

Signed-off-by: Andres Gomez <agomez@igalia.com>
Reviewed-by: Tomeu Vizoso <tomeu.vizoso@collabora.com> [v3]
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6388>
2020-12-22 18:31:01 +00:00
Andres Gomez
6b9b9baeab ci: specify MinIO's host URL in a global variable
Signed-off-by: Andres Gomez <agomez@igalia.com>
Reviewed-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6388>
2020-12-22 18:31:01 +00:00
Andres Gomez
9705434579 ci: build piglit in the Vulkan testing image
Signed-off-by: Andres Gomez <agomez@igalia.com>
Reviewed-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6388>
2020-12-22 18:31:01 +00:00
Andres Gomez
ef28b1b30f ci: update piglit's version so it features replayer
We also need that summary's aggregate command can use JUnit as backend,
a cross-compilation fix for its CMakeList.txt, a fix for the JUnit
backend and a small change in replayer's compare output.

v2:
  - Updated the piglit commit so it features another couple of needed
    fixes.

Signed-off-by: Andres Gomez <agomez@igalia.com>
Reviewed-by: Christian Gmeiner <christian.gmeiner@gmail.com> [v1]
Reviewed-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6388>
2020-12-22 18:31:01 +00:00
Andres Gomez
37258a6c4b ci: spread the usage of the FDO_UPSTREAM_REPO variable
Signed-off-by: Andres Gomez <agomez@igalia.com>
Reviewed-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6388>
2020-12-22 18:31:01 +00:00
Andres Gomez
645e7b4b6c ci: install ci-fairy in the testing images
v2:
  - Updated the ci-fairy commit to use.

Signed-off-by: Andres Gomez <agomez@igalia.com>
Reviewed-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6388>
2020-12-22 18:31:01 +00:00
Andres Gomez
ac03a9f715 ci: use ephemeral packages when building the build-base image
v2:
  - Update tag for the android_build image (Michel).

Signed-off-by: Andres Gomez <agomez@igalia.com>
Reviewed-by: Christian Gmeiner <christian.gmeiner@gmail.com> [v1]
Reviewed-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6388>
2020-12-22 18:31:01 +00:00
Andres Gomez
f5269b0b6a ci: specify source and build directories with CMake
The -S and -B flags were officially introduced in CMake 3.13.

Avoids the following warning:

"
CMake Warning:
  No source or binary directory provided.  Both will be assumed to be the
  same as the current working directory, but note that this warning will
  become a fatal error in future CMake releases.
"

Signed-off-by: Andres Gomez <agomez@igalia.com>
Reviewed-by: Christian Gmeiner <christian.gmeiner@gmail.com>
Reviewed-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6388>
2020-12-22 18:31:01 +00:00
Eric Anholt
463dbbffa8 ci/deqp: Make sure that we pull in all board-specific xfail/skip/flake files.
When introducing/removing these files, it's easy to forget to update the
yml to point to them.  Instead of requiring the separate update, just have
the runner script pick the right one from a single per-gpu variable.

As a result, we now pick up the new deqp-lvp-skips.txt that was added but
not conected.  This also required moving some bypass flakes from the
shared a630 flakes list to a separate list, which is a feature because now
we'd notice the introduction of flakes to the gmem path.

Fixes: ab79e6b8e3 ("ci: skip failing test on lavapipe")
Acked-by: Daniel Stone <daniels@collabora.com>
Reviewed-by: Juan A. Suarez <jasuarez@igalia.com>
Reviewed-by: Christian Gmeiner <christian.gmeiner@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8147>
2020-12-21 18:44:43 +00:00
Eric Anholt
2bea7f4336 ci/freedreno: Stop specifying the number of deqp threads
For "0" (its default) deqp-runner picks a number of jobs corresponding to
the CPU count, so set our hardware runners to use that (note that mesa's
deqp-runner.sh will pick a default of 4 if we don't specify a
DEQP_PARALLEL).

This means we'll allocate threads for the slow cores on a630 now, reducing
gles3 runtime from 6.5 minutes to around 5.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8132>
2020-12-17 18:42:34 +00:00
Eric Anholt
82f5664b74 ci/freedreno: Treat all freedreno deqp runs as saving results.
They've been doing so since the webdav results upload was added.  This
means that we'll get normal truncated failures lists with the pointer to
the job artifacts, rather than filling a log file if you broke everything.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8132>
2020-12-17 18:42:34 +00:00
Juan A. Suarez Romero
e384476d1e ci: Bump deqp to current vulkan-cts-1.2.5.0
This new version contains several fixes.

v1 (Eric):
 - Rebuild fail list for freedreno and lavapipe
 - Move freedreno crashes to skip list

Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/3902
Reviewed-by: Eric Anholt <eric@anholt.net>
Reviewed-by: Dave Airlie <airlied@redhat.com>
Signed-off-by: Juan A. Suarez Romero <jasuarez@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8088>
2020-12-17 11:56:43 +01:00
Jesse Natalie
5228847c02 CI: Add repeat-wait to Windows Piglit skip
This test is flaky/racy due to an incorrect timeout value being used.
See https://gitlab.freedesktop.org/mesa/piglit/-/merge_requests/433

Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8114>
2020-12-15 20:15:23 +00:00
Eric Anholt
f3e33dee07 ci: Add an ASan build on x86.
I want to enable ASan runs on freedreno.  It turns out it's a long road to
get there, starting with making sure we can run our unit tests with the
sanitizer enabled.

While I'm revving this container, add in valgrind too to make sure that
our build paths with valgrind enabled work.

Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7936>
2020-12-15 19:39:29 +00:00
Daniel Stone
84c8a35aa2 CI: Add Windows source dependency map
Now that we've soaked the Windows build in and it's working well,
restrict it to only running on given pipelines, albeit in a somewhat
surprising way.

Signed-off-by: Daniel Stone <daniels@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8053>
2020-12-11 17:09:56 +00:00
Dave Airlie
ac0d393eb1 CI: add lavapipe vulkan testing
Acked-by: Michel Dänzer <mdaenzer@redhat.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7952>
2020-12-11 06:37:50 +10:00
Eric Anholt
e11513b740 ci: Make sure that osmesa stays warnings-clean in release builds.
Reviewed-by: Eric Engestrom <eric@engestrom.ch>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/1243>
2020-12-10 18:38:13 +00:00
Eric Anholt
ee80237218 mesa: Retire classic OSMesa.
The classic OSMesa renders directly into user memory using
src/mesa/swrast, while gallium OSMesa renders using softpipe or llvmpipe
and copies out at glFlush() time.  This would make gallium look like a
worse choice for OSMesa, except that swrast is:

1) Painfully slow to render compared to llvmpipe
2) Incorrect at derivatives
3) Limited to GL 2.1 instead of GL 4.6

In my survey of OSMesa users, debian was the remaining holdout with
classic OSMesa in use on hurd and some rare non-LLVM-supported
architectures (sh4, alpha, etc.).  As of today, they've switched to
softpipe-based gallium OSMesa for them.

To prevent people from running the wrong OSMesa (to the extent that
running OSMesa can ever be the right thing), delete the classic
version.

Reviewed-by: Eric Engestrom <eric.engestrom@intel.com>

Closes: #320
Closes: #877
Closes: #2297
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/1243>
2020-12-10 18:38:13 +00:00
Tomeu Vizoso
5d833f433a ci: Only run the sanity job if there's a MR
As it will fail right away if there isn't, and that prevents the CI to
run on people's branches.

$ ci-fairy check-merge-request --require-allow-collaboration --junit-xml=check-merge-request.xml
ERROR: No open merge request against mesa/mesa with sha 9f6aba4be0

Signed-off-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Fixes: d4151f2e ("ci: Run sanity job only in pre-merge pipelines")
Reviewed-by: Michel Dänzer <mdaenzer@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8032>
2020-12-10 12:57:08 +00:00
Michel Dänzer
f0ca77c478 ci: Move deploy stage to the end of the pipeline
This should make more important jobs visible without scrolling on
pipeline pages.

The deploy stage jobs only depend on the sanity job or none at all, so
this has no impact on when the former can run.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7926>
2020-12-10 10:23:22 +00:00
Michel Dänzer
d4151f2efd ci: Run sanity job only in pre-merge pipelines
It's more of a nuisance than useful for forked branches.

This means the test-docs job can no longer have a direct dependency on
sanity for forked branches, so split it up into two jobs: one for
pre-merge pipelines, one for forked branches.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7926>
2020-12-10 10:23:22 +00:00
Simon Ser
ef75ede4ed egl/wayland: remove libwayland < 1.18 workaround
Require libwayland 1.18 and remove the workaround for
WL_SHM_FORMAT_{A,X}BGR16161616F.

Signed-off-by: Simon Ser <contact@emersion.fr>
Reviewed-by: Daniel Stone <daniel@fooishbar.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7771>
2020-12-10 09:55:22 +00:00
Michel Dänzer
01175c38c2 ci: Adapt armhf_test job to MESA_TEMPLATES_COMMIT related changes
I missed this before somehow.

Fixes: 0781d9825b "ci: Append $MESA_TEMPLATES_COMMIT to image tags"
Reviewed-by: Andres Gomez <agomez@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7957>
2020-12-10 08:22:46 +00:00
Michel Dänzer
6701662ae0 ci: Add .use-base-image template
And use it in jobs for images using another Mesa image as their base.

Should fix the build of images which don't use another Mesa image as
their base (by no longer setting the FDO_BASE_IMAGE variable).

Fixes: 0781d9825b "ci: Append $MESA_TEMPLATES_COMMIT to image tags"
Acked-by: Eric Anholt <eric@anholt.net>
Reviewed-by: Andres Gomez <agomez@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7957>
2020-12-10 08:22:46 +00:00
Michel Dänzer
f957d0d915 ci: Move BASE_TAG expansion to FDO_BASE_IMAGE assignment
This fixes the build of images which use another Mesa image as the base.

v2:
* Move $CI_REGISTRY_IMAGE expansion into FDO_BASE_IMAGE assignment as
  well (Dave Airlie)

Fixes: 0781d9825b "ci: Append $MESA_TEMPLATES_COMMIT to image tags"
Reported-by: Dave Airlie <airlied@redhat.com>
Acked-by: Eric Anholt <eric@anholt.net> # v1
Reviewed-by: Andres Gomez <agomez@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7957>
2020-12-10 08:22:46 +00:00
Michel Dänzer
f201535360 ci: Run sanity job automatically for forked branches as well
This should make running the CI for forked branches less painful again.

Reviewed-by: Eric Anholt <eric@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7904>
2020-12-05 10:26:00 +00:00
Michel Dänzer
459b3fcd06 ci: Manual test jobs don't need the Git tree
If they do need something, it should be passed via artifacts from a
build job.

Reviewed-by: Eric Anholt <eric@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7904>
2020-12-05 10:26:00 +00:00
Michel Dänzer
9a340814cb ci: sanity job doesn't need the Git tree
This should fix the sanity job taking >= 1 minute in some cases.

Reviewed-by: Eric Anholt <eric@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7904>
2020-12-05 10:26:00 +00:00
Michel Dänzer
42bc6db7e7 ci: Drop x86_build_old image
Currently not used for anything.

v2:
* Drop build script as well (Eric Anholt)

Fixes: a3543adc26 "clover: set LLVM min version to 8.0.1"
Reviewed-by: Eric Anholt <eric@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7902>
2020-12-05 09:56:09 +00:00
Michel Dänzer
0781d9825b ci: Append $MESA_TEMPLATES_COMMIT to image tags
This ensures all images get rebuilt when we update to a newer
ci-templates commit.

v2:
* Append to WINDOWS(_UPSTREAM)_IMAGE instead of WINDOWS_TAG. The latter
  failed, apparently variables are not expanded recursively on the
  Windows runners.
* Use separate MESA_IMAGE_TAG/MESA_BASE_IMAGE variables instead of
  appending to each FDO_DISTRIBUTION_TAG/FDO_BASE_IMAGE separately for
  Linux jobs, to prevent accidentally dropping the suffix.

Reviewed-by: Eric Anholt <eric@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7902>
2020-12-05 09:56:09 +00:00
Michel Dänzer
48f78dfd1a ci: Define global variable MESA_TEMPLATES_COMMIT for ci-templates commit
No functional change.

Reviewed-by: Eric Anholt <eric@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7902>
2020-12-05 09:56:09 +00:00
Michel Dänzer
a82fd89060 ci: Run git gc before creating Git cache tarball
Since the job which creates the cache tarball starts from the previous
cache, the cache kept accumulating cruft and growing bigger.

This cuts the size of the tarball in half (from almost 600M to under
300M), which can translate to significant time savings when downloading
it on some runners.

v2:
* Use git gc --aggressive (Eric Anholt)

Reviewed-by: Andres Gomez <agomez@igalia.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7920>
2020-12-05 09:38:32 +00:00
Juan A. Suarez Romero
72b68bd2a6 ci: add testing for VC4 drivers (Raspberry Pi 3)
This tests OpenGL ES 2.0 CTS suite with VC4 drivers, through baremetal
Raspberry Pi 3 devices.

The devices are connected to a switch that supports Power over Ethernet
(PoE), so the devices can be started/stopped through the switch, and
also to a host that runs the GitLab runner through serial-to-USB cables,
to monitor the devices to know when the testing finishes.

The Raspberries uses a network boot, using NFS and TFTP. For the root
filesystem, they use the one created in the armhf container. For the
kernel/modules case, this is handled externally. Currently it is using
the same kernel/modules that come with the Raspberry Pi OS. In future we
could build them in the same armhf container.

At this moment we only test armhf architecture, as this is the default
one suggested by the Raspberry Pi Foundation. In future we could also
add testing for arm64 architecture.

Finally, for the very rare ocassions where the Raspberry Pi 3 device is
booted but no data is received, it retries the testing for a second
time, powering off and on the device in the process.

v2:
 - Remove commit that exists capture devcoredump (Eric)
 - Squash remaining commits in one (Andres)

v3:
 - Add missing boot timeout check (Juan)

v4:
 - Use locks when running the PoE on/off script (Eric)
 - Use a timeout for serial read (Eric)

v5:
 - Rename stage to "raspberrypi" (Eric)
 - Bump up arm64_test tag (Eric)

v6:
 - Make serial buffer timeout optional (Juan)

Reviewed-by: Eric Anholt <eric@anholt.net>
Signed-off-by: Juan A. Suarez Romero <jasuarez@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7628>
2020-12-04 19:05:19 +01:00
Daniel Stone
d302481751 CI: Add llvmpipe- prefix to Piglit jobs
To make it easier to differentiate now that llvmpipe & softpipe are
lumped into the same stage.

Signed-off-by: Daniel Stone <daniels@collabora.com>
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Acked-by: Eric Anholt <eric@anholt.net>
Acked-by: Michel Dänzer <mdaenzer@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7873>
2020-12-03 02:03:18 +00:00
Daniel Stone
2609fe3452 CI: Reorder non-hardware stages last
Signed-off-by: Daniel Stone <daniels@collabora.com>
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Acked-by: Eric Anholt <eric@anholt.net>
Acked-by: Michel Dänzer <mdaenzer@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7873>
2020-12-03 02:03:18 +00:00
Daniel Stone
220a467b7f CI: Collapse lima & panfrost stages into one
This is now called 'arm'; even though they're two separate drivers, it
does help cut down on some of the more egregious horizontal scrolling.

Signed-off-by: Daniel Stone <daniels@collabora.com>
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Acked-by: Eric Anholt <eric@anholt.net>
Acked-by: Michel Dänzer <mdaenzer@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7873>
2020-12-03 02:03:18 +00:00
Daniel Stone
5673322745 CI: Collapse virgl & d3d12 stages into one
This is now called 'layered-backends'.

Signed-off-by: Daniel Stone <daniels@collabora.com>
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Acked-by: Eric Anholt <eric@anholt.net>
Acked-by: Michel Dänzer <mdaenzer@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7873>
2020-12-03 02:03:18 +00:00
Daniel Stone
343705a9cf CI: Collapse radv & radeonsi stages into one
This is now called 'amd'.

Signed-off-by: Daniel Stone <daniels@collabora.com>
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Acked-by: Eric Anholt <eric@anholt.net>
Acked-by: Michel Dänzer <mdaenzer@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7873>
2020-12-03 02:03:18 +00:00
Daniel Stone
d5bf4c99f6 CI: Collapse llvmpipe & softpipe stages into one
This is now called 'software-renderer'.

Signed-off-by: Daniel Stone <daniels@collabora.com>
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Acked-by: Eric Anholt <eric@anholt.net>
Acked-by: Michel Dänzer <mdaenzer@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7873>
2020-12-03 02:03:18 +00:00
Daniel Stone
4d7c848053 CI: Collapse SCons & meson-misc stages into one
This is now called 'build-misc'.

Signed-off-by: Daniel Stone <daniels@collabora.com>
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Acked-by: Eric Anholt <eric@anholt.net>
Acked-by: Michel Dänzer <mdaenzer@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7873>
2020-12-03 02:03:18 +00:00
Michel Dänzer
2f2c4a4764 ci: Go back to previous ci-templates commit for debian.yml
The newer commit broke the arm64_test container build.

Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/3910

v2:
* Also bump all image tags which had been bumped in the meantime

Reviewed-by: Eric Anholt <eric@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7883>
2020-12-02 19:15:42 +00:00
Erik Faye-Lund
195a001d73 gitlab-ci: do not clone git-repo for test-job
The only thing we really need from the git-repo is the piglit_run.ps1
script, so let's upload that into our artifacts instead.

Fixes: d560addc30 ("gitlab-ci: run piglit on windows")
Acked-by: Michel Dänzer <mdaenzer@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7867>
2020-12-02 12:02:21 +00:00
Erik Faye-Lund
b79eac6b07 gitlab-ci: ignore nv_copy_depth_to_color
This seems to be spuriously changing between crash and fail, so let's
skip it for now.

Reviewed-by: Eric Anholt <eric@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7857>
2020-12-02 10:04:58 +01:00
Erik Faye-Lund
d560addc30 gitlab-ci: run piglit on windows
This tests the D3D12 driver on Windows during CI, to prevent accidental
breakage.

Reviewed-by: Daniel Stone <daniels@collabora.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7857>
2020-12-02 10:04:53 +01:00
Erik Faye-Lund
76b51fdf0c gitlab-ci: build piglit in mesa_deps.ps1
This will allow us to run Piglit on Windows during CI.

Reviewed-by: Daniel Stone <daniels@collabora.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7857>
2020-12-02 10:04:48 +01:00
Erik Faye-Lund
eaab92cc61 gitlab-ci: store build-artifacts from building mesa
GitLab CI doesn't allow us to store artifacts from outside the
build-directory, so let's create an install-directory and install there
instead.

To do this properly, we need to expand a variable inside the
command-line, so we need to change to a double-quoted string.

Reviewed-by: Daniel Stone <daniels@collabora.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7857>
2020-12-02 10:04:39 +01:00
Samuel Pitoiset
e88c61eb41 ci: build the Vulkan device select layer
To avoid breaking the build.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Tony Wasserka <tony.wasserka@gmx.de>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7843>
2020-12-02 07:44:13 +01:00
Adam Jackson
94a9867b05 glx: Remove DRI1
The DRI1 drivers were removed in Mesa 8.0, released in February 2012.
Time to say goodnight.

Reviewed-by: Eric Anholt <eric@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7660>
2020-12-01 18:40:18 +00:00
Samuel Pitoiset
4c58c68ea6 ci: disable check-commits
Otherwise the CI sanity check fails if the commit title exceed
80 characters

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7852>
2020-12-01 14:31:11 +01:00
Michel Dänzer
b9ee0cd69a ci: Make test-docs job depend on sanity job
Without this, the test-docs job could end up waiting for manual action
after the sanity job failed, which prevented the pipeline as a whole
from having failed status.

(This means the test-docs job will no longer exist in one corner case
where it did before, when pushing directly to a non-master branch of
the main repository. That should be fine, since the docs are only
deployed from master.)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7676>
2020-11-30 08:53:44 +00:00
Michel Dänzer
94f4497a79 ci: Squash "check mr/commits" jobs into a single sanity job
The "check commits" job can work again with current ci-templates, but
there's no need to keep it as a separate job.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7676>
2020-11-30 08:53:44 +00:00
Michel Dänzer
988dfc944d ci: Move sanity stage to the beginning of the pipeline
This is possible now that it uses the external ci-fairy docker image.

This allows dropping the "check mr" job from needs: of other jobs, the
container stage jobs will only become available once the sanity stage
has passed.

This also allows simplifying the "check mr" job rules and script, since
the job only needs to exist in pre-merge pipelines for MRs anymore.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7676>
2020-11-30 08:53:44 +00:00
Michel Dänzer
8749fc4261 ci: Use ci-fairy docker image instead of local git_archive one
The ci-fairy image contains pip and ci-fairy.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7676>
2020-11-30 08:53:44 +00:00
Michel Dänzer
cfe45f3bd5 ci: Update to current ci-templates
The 64-bit ARM architecture suffix was changed from arm64v8 to aarch64.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7676>
2020-11-30 08:53:44 +00:00
Michel Dänzer
cc80415a41 ci: Drop ci-templates-sha anchor
As of GitLab 13.6, multiple files can be included for a single ref.

Suggested-by: Daniel Stone <daniel@fooishbar.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7676>
2020-11-30 08:53:44 +00:00
Daniel Stone
5b946d6eac CI: Re-enable MSVC build
Trying this again after reworking the virtualised network setup on the
Windows runner.

Signed-off-by: Daniel Stone <daniels@collabora.com>
Reviewed-by: Jesse Natalie <jenatali@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7537>
2020-11-27 11:22:07 +00:00
Daniel Stone
77a474cb88 CI: Remove ludicrous Windows container build timeout
The full end-to-end job now completes in around 45min, which is far more
reasonable than the previous 3.5h.

Signed-off-by: Daniel Stone <daniels@collabora.com>
Reviewed-by: Jesse Natalie <jenatali@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7537>
2020-11-27 11:22:07 +00:00
Daniel Stone
ddc900f738 CI: Add Windows libclc and SPIRV-LLVM-Translator builds
We need these builds in Windows in order to build the microsoft-clc
parts.

Signed-off-by: Daniel Stone <daniels@collabora.com>
Reviewed-by: Jesse Natalie <jenatali@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7537>
2020-11-27 11:22:07 +00:00
Eric Engestrom
4da8323a14 gitlab-ci: drop deprecated platforms that snuck in when nobody was watching
... even though I did review that commit. My bad :]

Fixes: c56f09124b ("gitlab-ci: Move classic driver testing to a new meson-classic job")
Signed-off-by: Eric Engestrom <eric@engestrom.ch>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5844>
2020-11-20 21:35:23 +00:00
Eric Anholt
afa25cc49d ci: Bring freedreno into the "warnings clean release build" fold.
There are just a couple warnings left for turnip that point to real error
handling we should be adding.

Acked-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7664>
2020-11-18 18:15:02 +00:00
Eric Anholt
d1b2d15cb9 ci: Enable -Werror in more clover builds.
We've slowly been pushing -Werror through the set of CI builds, and it
looks like clover is clean at the moment.  Keep it that way.

Reviewed-by: Michel Dänzer <mdaenzer@redhat.com>
Acked-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7664>
2020-11-18 18:15:02 +00:00
Eric Anholt
dd34d28de7 ci/db410c: Fix networking so we get artifacts from our jobs.
Seems some sort of linux change (bugfix?) resulted in the db410cs
selecting device mode for the db410cs due to the micro cable being
plugged in (fastboot runs them in device mode), so we weren't finding
the network and getting artifacts out.

Closes: #3728
Acked-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6971>
2020-11-11 17:22:47 +00:00
Eric Anholt
c189d385ce ci: Bump deqp to current vulkan-cts-1.2.4
I want the new version to show the fix in the fd-largeconsts branch (and
make sure the pass keeps working, and make sure other drivers get around
to fixing the issue).  While I'm here, cherry-pick in the VK test along
with the GLES one, and also the fix for clip_three on ARMs.

Since the VK and GL test lists were changing, I took the opportunity to
reset freedreno xfails lists to just the tests that are being run with the
CTS uprev, and increase its coverage to 1/10th of the CTS across two
boards (since we just freed up a bunch of runtime with the grouped gles
"other" job).

For panfrost, I didn't spend the time characterizing the t720 fragment_ops
flakes like I did for the deqp-runner change.  Given that the random
behavior changes between CTS versions, it doesn't seem to be worth the
time to do so.

Reviewed-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6971>
2020-11-11 17:22:47 +00:00
Eric Anholt
6bc35c00e2 ci/deqp: Allow specifying the caselist fraction separate from CI_NODE_INDEX.
To increase our VK coverage on a630, we want to have two jobs in parallel,
but we still can't hit full coverage so we need the fractional setting to
be separate from gitlab CI's flags for setting up parallel jobs.

Reviewed-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6971>
2020-11-11 17:22:47 +00:00
Eric Anholt
2998a0b055 ci/freedreno: Group the short a630 dEQP runs into one test job.
This saves the minute and a half boot time on each of these minute-or-less
test jobs.  The whole job was 3.5 minutes in my last run.

Acked-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6971>
2020-11-11 17:22:47 +00:00
Eric Anholt
bf576b449e ci: Only install kernel modules for LAVA devices.
The recent change to install kernel modules for AMD included a sed job to
disable kernel modules in the defconfig.  This somehow broke booting on
a307, except the commit failed to bump the arm64_test tag so it wasn't
noticed until the next uprev. (I didn't notice when landing the next
change to that container to add the deqp runner, because I didn't get a
git conflict on rebasing my tag bump so I didn't bump the tag again to
pull in the kernel changes and catch the fail).

I've spent a while trying to debug what's happened (including what
*should* be a replication of the kernel build on my local db410c) and come
up empty.  Just punt and disable the AMD kernel module changes on
baremetal to fix it.  Bump every container using lava_build.sh to make
sure we don't screw anything up with the script changes.

Fixes: 60c5729d16 ("ci: Distribute ADMGPU driver to LAVA as a module")
Reviewed-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6971>
2020-11-11 17:22:47 +00:00
Eric Anholt
bf29daa1b5 ci/deqp: Switch to a new dEQP runner written in Rust.
I found the C++ runner hard to develop on, and we had stability issues and
outstanding feature needs that made me want something I felt good about
hacking on.  Thus, Rewrite It In Rust of the deqp runner.

The new runner includes:

- Skip lists don't reshuffle the test list.
- Known-flake handling without resorting to skip lists (fixing our main CI
  reliability issue on a3xx right now).
- Per-thread Vulkan shader caches should speed up VK CI runtime.
- Tracking of crashes separate from fails (so we can see progress on that
  front).
- Logging of deqp stderr spam (particularly assertion failures!) in the CI
  log.
- Integrated QPA filtering so we don't have bash perf issues for it.
- Logging of what caselist to go look at for a given error report (in red,
  so it's easier to find in your CI log).
- The code is 1/3 unit tests, and easy to extend for more coverage.
- Non-LAVA CI runs create a failures.csv in artifacts that you can check
  in as your deqp-*-fails.txt file.
- Test runtime is included in results.csv so you can debug how to speed up
  your CI job.
- Pretty summary at the end of the run of slow/flaky/failed tests.

Since this is a new runner with a different RNG, the test groups are
shuffled one more time.  This seems to result in some panfrost T720
stability issues (See its new deqp-panfrost-t720-flakes.txt), and one new
flake in freedreno a630.

Reviewed-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7434>
2020-11-06 19:48:39 +00:00
Tomeu Vizoso
60c5729d16 ci: Distribute ADMGPU driver to LAVA as a module
As it needs firmware to probe, and we cannot bundle it within the kernel
image because it is incompatible with the GPL.

Currently we rebind the driver after boot but that's slow and fragile,
as unloads of DRM drivers aren't generally tested.

Signed-off-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7420>
2020-11-05 17:09:58 +01:00
Christian Gmeiner
41be85ad7b ci/x86: speed up piglit testing
Add python3 packages to speed up piglit run.

 - lxml. An accelerated python xml library using libxml2 (http://lxml.de/)
 - simplejson. A fast C based implementation of the python json library.
   (https://simplejson.readthedocs.org/en/latest/)

Signed-off-by: Christian Gmeiner <christian.gmeiner@gmail.com>
Reviewed-by: Michel Dänzer <mdaenzer@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7379>
2020-10-30 17:22:06 +00:00
Dave Airlie
fa5acbbcde CI: remove llvmpipe cl flake test
Reviewed-by: Daniel Stone <daniels@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7328>
2020-10-28 05:18:54 +10:00
Daniel Stone
76f74bd653 CI: Only run OpenCL tests when we need to
Like the other drivers, set up rules so we don't run piglit-cl unless we
need to.

Signed-off-by: Daniel Stone <daniels@collabora.com>
Reviewed-by: Michel Dänzer <mdaenzer@redhat.com>
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/3695
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7330>
2020-10-27 12:37:11 +00:00
Michel Dänzer
6b874eb42c ci: Run git_archive job if all_paths matches
The lack of this could break post-merge pipelines:
https://gitlab.freedesktop.org/mesa/mesa/-/pipelines/218636

(I missed this in
https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7278)

Reviewed-by: Daniel Stone <daniels@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7319>
2020-10-27 09:21:32 +00:00
Michel Dänzer
b92eadb29c ci: Add "check mr" job to needs: of build jobs
So that if the former fails, build & test jobs won't run, wasting less
time & CI resources.

This requires slight tweaks to the rules: of the former job, to make
sure it always exists when the build jobs do.

Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7278>
2020-10-26 16:42:17 +00:00
Rhys Perry
542feb9ab6 ci: disable check commits job for now
This job currently disallows reasonably long commit messages (for example,
CTS test names).

Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7161>
2020-10-22 12:07:45 +01:00
Michel Dänzer
4c41d1900e ci: Add jobs running ci-fairy checks
These can catch various common issues in MR settings and Git commit
logs.

The "check mr" job only exists in pre-merge pipelines for MRs, and runs
automatically.

The "check commits" job only exists in pre-merge pipelines for MRs and
in pipelines for forked branches. It runs automatically in the former
case and can be manually triggered in the latter.

v2:
* Use git_archive docker image (Daniel Stone)
* Use a single sanity stage for both jobs (Tomeu Vizoso)

Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6209>
2020-10-21 16:21:41 +00:00
Michel Dänzer
7b09d501e4 ci: Add empty needs: to pages job
So it doesn't need to wait for jobs in earlier stages.

Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6209>
2020-10-21 16:21:41 +00:00
Michel Dänzer
9d1d3a89c4 ci: Move test-docs job to deploy stage
We put it in the first container stage to prevent it from waiting for
jobs in previous stages, but empty needs: works for that as well.

Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6209>
2020-10-21 16:21:41 +00:00
Eric Anholt
22a6396340 ci: Enable Werror on meson-arm64-build-test.
I found that it was warnings-clean already, let's make sure it stays that
way.

Reviewed-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7224>
2020-10-20 22:16:59 +00:00
Eric Anholt
b05c107d74 ci: Enable NIR_VALIDATE everywhere.
I wasted a bunch of time today tracking down a spurious test results
change due to a driver invoking UB by running tests where NIR validation
had failed (instruction reading from components beyond vector size).  If
we need to shrink our coverage to get runtimes down, it will still be
better to be catching validation errors in CI.

To keep the test jobs runtime under 10 minutes, I've split a530's gles2 to
two different jobs.

Acked-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7203>
2020-10-20 15:37:20 +00:00
Eric Anholt
ab57df2622 ci/android: Switch build to using platform SDK version 26.
In SDK 25 (Android 7, 2016), the kernel only went up to around 4.4, so
the upstreamed sync API didn't exist, and libsync didn't expose
sync_merge().

In SDK 26 (Android 8, 2017), the kernel is sometimes bumped to 4.9 or
4.14, but libsync has a sync_merge() that operates on either the
downstream or the upstream API.

Since our android-targeting drivers in general use sync objects (requiring
a kernel newer than 7 got) and sync_merge() (suggesting interaction with
external fencing that started in Android 8), make CI build against an SDK
version with the sync API.  I think really doing SDK 25 right at this
point would involve backporting mesa with some #ifdefs to not expose sync
APIs that wouldn't work.

Reviewed-by: Kristian H. Kristensen <hoegsberg@google.com>
Acked-by: Tapani Pälli <tapani.palli@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6821>
2020-10-19 18:41:50 +00:00
Eric Anholt
0767af3ffe ci/android: Switch to using the Android NDK.
To support Android drivers, we're going to want to be tracking that Mesa's
build succeeds on a real android toolchain.  This still uses the android
stubs since these libs aren't in the NDK.

Note that I had to drop the Intel and AMD drivers currently: we don't have
LLVM cross-compiled for Android in this container, and I'm honestly hoping
ACO saves us from that.  Intel has dependencies on libexpat, which AOSP
really doesn't want to bring in, and it looks to me like those dependencies
could be optional.

Reviewed-by: Kristian H. Kristensen <hoegsberg@google.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6700>
2020-10-14 16:54:59 +00:00
Alejandro Piñeiro
e4af07be76 gitlab-ci: add broadcom vulkan driver
At this point we are only interested to test if it keeps building.

v2: include meson-arm64 (Eric)

Reviewed-by: Eric Anholt <eric@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6766>
2020-10-13 21:21:24 +00:00
Dave Airlie
b0df97b576 CI: build our own spirv tools
This causes a lot of hiccups on the CL tests, but I've got most of
them fixed in another MR in pieces.

This should at least give a much more realistic baseline.

v2: use script in both places

Reviewed-by: Michel Dänzer <mdaenzer@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7073>
2020-10-10 06:13:17 +10:00
Dave Airlie
0a172dca26 ci: enable piglit testing of clover/llvmpipe.
This adds support for building clover/llvmpipe and running the
piglit CL tests on it.

It uses the gl testing container, and add builds the libclc
spirv libraries as part of that which requires the llvm spirv
translator in the build container.

It also builds the llvm spirv translator as part of the build
root and creates a mesa build that builds clover for testing
against it. It uses llvm 10 as the baseline.

This drops bswap as it has an oob memory access with llvmpipe
which cause flaky test results. phatk also seems flaky

Reviewed-by: Michel Dänzer <mdaenzer@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6901>
2020-10-08 00:41:30 +00:00
Dave Airlie
137d7d29fa ci: move to using clang 10 for meson + clover
Reviewed-by: Michel Dänzer <mdaenzer@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7017>
2020-10-08 04:23:41 +10:00
Rob Clark
1b39d74c68 ci: Enable remaining (non-rotate) mustpass CTS tests
The gles3 and gles31 multisample and 565-no-depth-no-stencil caselists
are also mustpass.  And they don't add a significant number of extra
test cases.

The remaining mustpass caselists all involve rotation, which is not
currently supported in the surfaceless deqp build.

Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6553>
2020-09-29 19:58:50 +00:00
Rob Clark
8abe3bb95a ci: cherry-pick deqp fix for config choosing
Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6553>
2020-09-29 19:58:50 +00:00
Serge Martin
a3543adc26 clover: set LLVM min version to 8.0.1
It also bump from 8.0.0 to .1 for AMD gallium and VK

Reviewed-by: Francisco Jerez <currojerez@riseup.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6336>
2020-09-26 11:06:42 +02:00
Boris Brezillon
f7583bda8f ci: Extend meson-clang coverage by compiling all gallium drivers
Some compile-time regressions go unnoticed because not all gallium
drivers are compiled as part of the meson-clang job. Let's pass an
explicit list of drivers to compile instead of setting GALLIUM_DRIVERS
to "auto" to increase CI coverage.

Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com>
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Reviewed-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6811>
2020-09-25 09:08:34 +02:00
Michel Dänzer
0836e90418 ci: Don't create test-docs job if the pages one exists in the pipeline
It's redundant in that case.

Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6566>
2020-09-21 15:13:04 +00:00
Michel Dänzer
efec576405 ci: Prevent pages job from running in pre-merge pipelines
Since pre-merge pipelines run in the "mesa" namespace now, the rule
would have created the job if the source branch was named "master" (and
the job might have updated the public website).

Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6566>
2020-09-21 15:13:04 +00:00
Michel Dänzer
8cb450f769 ci: Always use CI_PROJECT_NAMESPACE instead of CI_PROJECT_PATH
And always check it first.

Cleanup for consistency.

Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6566>
2020-09-21 15:13:04 +00:00