Eric Anholt
f3a7a8a4dc
ci/freedreno: Switch the piglit testing to the new piglit runner.
...
Getting piglit to fit onto our test devices was proving difficult, and we
need the ability to handle flakes, so switch to the rust piglit runner
that @pepp wrote as part of the deqp-runner repo which gives us flake
detection, sharding across boards, fractional runs, and almost half the
runtime.
It doesn't handle piglit subtests yet, but if you can't run piglit's
python on your devices because it's too bloated and unstable, this is a
way forward.
Reviewed-by: Juan A. Suarez Romero <jasuarez@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9468 >
2021-03-16 22:19:30 +00:00
Eric Anholt
0b4691d615
ci: Bump deqp-runner to v0.6.3.
...
This adds a piglit runner that we'll be using on freedreno, better
xfail/unexpectedpass handling for some cases (Missing->Pass, Warn->Warn),
better error logging for the Missing issue we've had in CI, a fix for a
source of Missing, and a pile more unit tests.
As a result, we now catch that the Missing results for a bunch of our
tests have gone away.
Reviewed-by: Juan A. Suarez Romero <jasuarez@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9468 >
2021-03-16 22:19:30 +00:00
Timur Kristóf
8205cce007
aco: Use ASSERTED to avoid unused variable warning.
...
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com >
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9632 >
2021-03-16 21:46:52 +00:00
Timur Kristóf
1d571c6bc1
pan/bi: Use correct enum type for NIR intrinsics.
...
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com >
Reviewed-by: Daniel Stone <daniels@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9632 >
2021-03-16 21:46:52 +00:00
Eric Anholt
0a1c533c6e
ci/panfrost: Disable t860/radeonsi testing while the runners are struggling.
...
These jobs keep getting stuck, so disable for now. Info on what is going
on is at
https://gitlab.freedesktop.org/mesa/mesa/-/issues/3437#note_841920 (the
grunt and stoney runners are maybe still operational at the moment)
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9636 >
2021-03-16 21:36:22 +00:00
Mike Blumenkrantz
4b063d636e
zink: unset last_vertex_stage_dirty after applying it
...
turns out that having extra flags for stuff isn't that useful if you never reset them
Fixes: 9b8c121917 ("zink: flag shaders as needing update when clip_halfz changes")
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9633 >
2021-03-16 21:29:09 +00:00
Erik Faye-Lund
30cf07cc8a
lavapipe: fix primitive-restart for uint8 indices
...
I forgot to add an implicit primitive-restart index for uint8 while
adding support for this initially. But we also have a nice little
helper to simplify this, so let's use that instead of open-coding.
Fixes: 6526e6d11b ("lavapipe: implement VK_EXT_index_type_uint8")
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Reviewed-by: Eric Anholt <eric@anholt.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9622 >
2021-03-16 21:17:16 +00:00
Mike Blumenkrantz
3aa2da96df
zink: add missing null check
...
mismerged from an earlier patch...
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9623 >
2021-03-16 20:42:43 +00:00
Daniel Stone
5ff99387a1
CI: Trigger Windows builds for llvmpipe & Vulkan changes
...
As Windows now builds llvmpipe and lavapipe, we should be sure to run
their builds when these change.
Acked-by: Jesse Natalie <jenatali@microsoft.com >
Reviewed-by: Eric Anholt <eric@anholt.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9518 >
2021-03-16 17:31:09 +00:00
Rob Clark
441fba45ed
freedreno: Fix fd_fence_finish()
...
fd_fence_create_unflushed() is called with the driver context, but
fd_fence_finish() is called with the threaded/frontend context, which
is what threaded_context_flush() expects to be passed.
Fixes: c4e5beef07 ("freedreno: threaded_context async flush support")
Signed-off-by: Rob Clark <robdclark@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9627 >
2021-03-16 17:12:14 +00:00
Anuj Phogat
b505db3864
intel: Simplify few version checks involving G4X
...
Signed-off-by: Anuj Phogat <anuj.phogat@gmail.com >
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9608 >
2021-03-16 16:40:12 +00:00
Anuj Phogat
e66e8a0109
intel: Remove GEN_IS_G4X macro
...
GEN_GEN and GEN_VERSIONx10 macros provide a consistent way to do platform
version checks. We can avoid platform specific macros.
Signed-off-by: Anuj Phogat <anuj.phogat@gmail.com >
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9608 >
2021-03-16 16:40:12 +00:00
Anuj Phogat
1d0295ea2c
intel: Simplify version checks involving haswell
...
Signed-off-by: Anuj Phogat <anuj.phogat@gmail.com >
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9608 >
2021-03-16 16:40:12 +00:00
Anuj Phogat
97d6ceaf04
intel: Remove GEN_IS_HASWELL macro
...
Use GEN_VERSIONx10 == 75 check in place of GEN_IS_HASWELL macro.
GEN_GEN and GEN_VERSIONx10 macros provide a consistent way to do platform
version checks. We can avoid platform specific macros.
Signed-off-by: Anuj Phogat <anuj.phogat@gmail.com >
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9608 >
2021-03-16 16:40:12 +00:00
Eric Anholt
739486de2f
freedreno/a5xx: Fix the max texture buffer size.
...
The GLES minmax is 65536. The blob vulkan exposes 65536 on both a5xx and
a6xx, but try just doing the same as we do for a6xx.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9617 >
2021-03-16 16:15:48 +00:00
Eric Anholt
b93d21810a
freedreno/a5xx: Fix the texel buffer alignment requirement.
...
Info comes from the a540 vulkan blob driver minTexelBufferOffsetAlignment.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9617 >
2021-03-16 16:15:48 +00:00
Michel Dänzer
16fc6b87bb
ci: Run meson tests in strace if it's available and can be used
...
Keep the strace logs in job artifacts for tests which timed out.
This can be useful for figuring out why a timeout occurred.
strace cannot be used in jobs where ASAN is enabled, because ASAN's
leak checker also uses ptrace(), which isn't possible within strace.
Suggested-by: Daniel Stone <daniels@collabora.com >
Reviewed-by: Adam Jackson <ajax@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9472 >
2021-03-16 15:32:33 +00:00
Michel Dänzer
acd6117fe0
ci: Add strace to the x86_build docker image
...
Reviewed-by: Adam Jackson <ajax@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9472 >
2021-03-16 15:32:33 +00:00
Michel Dänzer
d411691965
aco/tests: Use _exit in child process
...
Since the child process doesn't call exec(), exit() attempted to run
atexit handlers registered by the parent process. This could result in
the child process hanging in exit() if there were still disk cache
threads alive when the parent process called fork(). (The CI runners
hit this multiple times when running tests in strace)
Fixes: 6a246f5c6d "aco/tests: Fix deadlock for too large test lists"
Reviewed-by: Tony Wasserka <tony.wasserka@gmx.de >
Reviewed-by: Adam Jackson <ajax@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9472 >
2021-03-16 15:32:33 +00:00
Michel Dänzer
81beef929d
ci: Move /usr/bin/time check from meson test wrapper to build script
...
In jobs where the wrapper isn't used, this leaves the
<build directory>/meson-logs/testlog.txt filename unchanged.
Also prepares for using different wrapper scripts in different jobs.
Reviewed-by: Adam Jackson <ajax@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9472 >
2021-03-16 15:32:33 +00:00
Michel Dänzer
e7ba882cd4
ci: Drop SIGINT handling from meson test wrapper script
...
Not needed, I had misread meson code.
Reviewed-by: Adam Jackson <ajax@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9472 >
2021-03-16 15:32:33 +00:00
Michel Dänzer
bc76f9a8f2
ci: Move meson-build.sh to meson/build.sh
...
A little less clutter in the top .gitlab-ci directory.
Reviewed-by: Adam Jackson <ajax@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9472 >
2021-03-16 15:32:33 +00:00
Jesse Natalie
3b687722b3
d3d12: Really handle null constant buffers
...
Previous attempt was checking the wrong pointer...
Fixes: eb27db86 ("d3d12: Handle null constant buffers")
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/4362
Reviewed-by: Bill Kristiansen <billkris@microsoft.com >
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9349 >
2021-03-16 15:22:35 +00:00
Jesse Natalie
8708d32d9c
d3d12: Handle is_new_style_shadow comparison filtering
...
Note: the tex instruction is modified in place, so the correct
number of expected result components needs to be cached before
the shadow state is modified
Reviewed-by: Bill Kristiansen <billkris@microsoft.com >
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9349 >
2021-03-16 15:22:35 +00:00
Jesse Natalie
6db28f5201
d3d12: Move descriptor pools to screen, and add lock
...
Surfaces can be shared across contexts, and can even outlive the
original context that created them, so move the pools to the screen.
Since they no longer belong to a single context, they need a lock now.
v2: Samplers moved back to the context
v3: Fix Linux build
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/3812
Reviewed-by: Bill Kristiansen <billkris@microsoft.com >
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9349 >
2021-03-16 15:22:35 +00:00
Samuel Pitoiset
7c68a2518f
vulkan: add missing vk_shader_module.c/h includes to Makefile
...
Fixes: 76078ed9fe ("vk/util: add unified shader module struct/functions")
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9620 >
2021-03-16 16:01:10 +01:00
Mike Blumenkrantz
23538ed7a8
zink: cache bufferviews
...
we can cache bufferviews just like we do surfaces, so let's do that
Reviewed-by: Dave Airlie <airlied@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9543 >
2021-03-16 10:45:32 -04:00
Mike Blumenkrantz
da2b841798
zink: properly handle null bufferview descriptor states
...
now that we have this state properly stored we can use it for more accurate
hashing and caching
Reviewed-by: Dave Airlie <airlied@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9543 >
2021-03-16 10:45:32 -04:00
Mike Blumenkrantz
ebdc0cd4ad
zink: improve debug asserts for samplers/images during descriptor updates
...
these are now more accurate for null bufferviews/imageviews
Reviewed-by: Dave Airlie <airlied@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9543 >
2021-03-16 10:45:32 -04:00
Mike Blumenkrantz
545625600b
zink: update null descriptor hashes to reflect current descriptor states
...
also add a bufferview hash since we use these now
Reviewed-by: Dave Airlie <airlied@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9543 >
2021-03-16 10:45:32 -04:00
Mike Blumenkrantz
c380a46036
zink: add helper function for getting a resource for a descriptor
...
Reviewed-by: Dave Airlie <airlied@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9543 >
2021-03-16 10:45:32 -04:00
Mike Blumenkrantz
1b96e3e2b0
zink: massively beef up batch tracking for shader images
...
the struct for these isn't allocated, so we need to ensure that the objects
in it are explicitly tracked on batches when they're used
Reviewed-by: Dave Airlie <airlied@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9543 >
2021-03-16 10:45:32 -04:00
Mike Blumenkrantz
78068d039b
zink: add extra batch tracking for sampler views
...
we're going to start invalidating and rebinding resources, which means
we need to be extra sure that we have our lifetimes in order here
Reviewed-by: Dave Airlie <airlied@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9543 >
2021-03-16 10:45:32 -04:00
Mike Blumenkrantz
dc80529e1f
zink: simplify bufferview and imageview descriptor state hashing
...
now that we have the hash for the internal objects available at all times, we
can directly reuse this instead of computing it each time, giving us more
accurate hashes as well as saving us cpu cycles
Reviewed-by: Dave Airlie <airlied@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9543 >
2021-03-16 10:45:32 -04:00
Mike Blumenkrantz
473ee28cf3
zink: store bufferview hash to bufferview struct
...
this lets us do a lot of things more precisely for bufferviews
Reviewed-by: Dave Airlie <airlied@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9543 >
2021-03-16 10:45:32 -04:00
Mike Blumenkrantz
5acbba4e41
zink: explicitly use zink_surface objects for sampler/image view objects
...
we can reuse this codepath instead of NIHing it
Reviewed-by: Dave Airlie <airlied@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9543 >
2021-03-16 10:45:32 -04:00
Mike Blumenkrantz
054f53e3d0
zink: use an explicit zink_buffer_view struct
...
this gives us an object to work with similar to zink_surface
Reviewed-by: Dave Airlie <airlied@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9543 >
2021-03-16 10:45:32 -04:00
Mike Blumenkrantz
4cb5bb72be
zink: add util function for checking whether shader descriptor is buffer from program
...
Reviewed-by: Dave Airlie <airlied@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9543 >
2021-03-16 10:45:32 -04:00
Mike Blumenkrantz
12243f682d
zink: add util function for checking whether a shader descriptor is a buffer
...
Reviewed-by: Dave Airlie <airlied@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9543 >
2021-03-16 10:45:32 -04:00
Mike Blumenkrantz
2b18105ff7
zink: add some asserts for pipeline barriers to check renderpass state
...
it's illegal to emit barriers during a renderpass
Reviewed-by: Dave Airlie <airlied@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9543 >
2021-03-16 10:45:32 -04:00
Mike Blumenkrantz
f4a53287de
zink: handle cached descriptor set punting
...
if an active set gets invalidated, it needs to be punted from the active
hash table so it doesn't get reused
Reviewed-by: Dave Airlie <airlied@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9543 >
2021-03-16 10:45:32 -04:00
Daniel Stone
e6aacec9e1
CI: Try really hard to get updated Windows TLS certs
...
Windows doesn't actually distribute a full TLS CA certificate store, but
pulls them in over time with Windows Update. Try to prime it by manually
pulling the certificates and installing them.
This bumps the Windows tag to force a rebuild.
Acked-by: Michel Dänzer <mdaenzer@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9618 >
2021-03-16 11:07:02 +00:00
Mike Blumenkrantz
616720d6ae
zink: track resource_object usage instead of resource usage
...
the resource object is now a state tracker for the inner resource_object,
so it can safely be destroyed even if the backing resource is still in use
this also requires updating various things to keep descriptor states/caches working
Reviewed-by: Dave Airlie <airlied@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9544 >
2021-03-15 22:08:06 -04:00
Mike Blumenkrantz
708f19317c
zink: split out backing resource object create/destroy
...
moving towards these being able to exist semi-independently...
Reviewed-by: Dave Airlie <airlied@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9544 >
2021-03-15 22:08:06 -04:00
Mike Blumenkrantz
46bbc835c1
zink: move resource internals to a separate struct
...
this starts the path towards being able to replace the backing objects for
a resource
Reviewed-by: Dave Airlie <airlied@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9544 >
2021-03-15 22:08:06 -04:00
Mike Blumenkrantz
f6c6320a5f
zink: break out batch id finding for resource usage into util function
...
this is generally helpful for figuring out the last batch a resource was
used for
Reviewed-by: Dave Airlie <airlied@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9544 >
2021-03-15 22:08:06 -04:00
Mike Blumenkrantz
c699cc0f9b
zink: avoid looping for non-ubo descriptor updates based on set usage
...
if we know that the descriptor set is cached and already in use by a given
batch, then we also know that all the resources in the set are tracked, which
means that we can skip over some looping during descriptor updates which would
otherwise be used to add tracking for sampler/image views/states
Reviewed-by: Dave Airlie <airlied@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9567 >
2021-03-16 01:01:57 +00:00
Mike Blumenkrantz
839d609b8c
zink: add batch usage flags for sampler views/states and desc sets
...
this massively cuts down cpu time for hashing and lookups, resulting in
a noticeable performance increase
the sampler_state batch usage for now is just being set for future use when
it will be leveraged to permit immediate deletion
Reviewed-by: Dave Airlie <airlied@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9567 >
2021-03-16 01:01:57 +00:00
Bas Nieuwenhuizen
013aa05edb
radv: Use correct DCC compressed block size for sampling.
...
Don't need to change the pre-GFX9 samplers because this option doesn't
vary there.
Fixes: f848f2adfa ("radv: Use ac_surface DCC settings for shareable images.")
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/4455
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/4425
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9611 >
2021-03-16 00:50:11 +00:00
Jason Ekstrand
ee395df315
genxml: Make 1-bit L3$ config register fields bool on Gen7
...
Otherwise, they look like booleans but, if you put a value other than
0/1 in them, the GenXML generator code will explode.
Fixes: b6875b0094 "anv: Drop has_slm in emit_l3_config for gen11+"
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9614 >
2021-03-15 17:22:49 -07:00