Caio Oliveira [Mon, 18 Sep 2023 09:45:40 +0000 (02:45 -0700)]
util: Remove size information from child allocations
With linear_realloc() gone, there's no code that reads the size
in linear_size_chunk struct, so it can be removed. This removes
the 8-byte overhead per child allocation and simplifies the
allocation code.
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25280>
Caio Oliveira [Mon, 18 Sep 2023 09:34:34 +0000 (02:34 -0700)]
util: Remove linear_realloc()
Now that linear_realloc() is unused, remove it. It is not an actual
realloc, will always allocate new memory and copy data around -- and
had a big warning about it in the documentation.
In the couple of uses we had before, the client code knew the size,
so it could be changed to perform the allocation and the copy by
themselves. The client code keeping the size is the recommended
way here.
This will allow us remove linear_size_chunk later.
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25280>
Caio Oliveira [Mon, 18 Sep 2023 09:19:21 +0000 (02:19 -0700)]
util: Remove usages of linear_realloc()
Note that for linear allocator, the realloc will always
allocate new memory. In both cases that realloc was used,
the existing size was known, so we can just allocate
and do the copy ourselves.
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25280>
Caio Oliveira [Mon, 18 Sep 2023 08:51:13 +0000 (01:51 -0700)]
util: Use an opaque type for linear context
In the linear allocation only the parent (context) can be used
to allocate new children, so let's use an opaque type to identify
the linear context. This is similar to what's done in GC allocator.
Update the documentation and a couple of function names to
refer to linear context instead of linear parent.
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25280>
Caio Oliveira [Mon, 18 Sep 2023 08:15:42 +0000 (01:15 -0700)]
util: Make DECLARE_LINEAR_ALLOC_* macros assume no destructors
Linear allocator doesn't support calling custom destructors to
its child allocations nor freeing individual child allocations.
So the destructor callback and the delete operator don't apply
to objects using linear allocator.
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25280>
Caio Oliveira [Mon, 18 Sep 2023 06:11:58 +0000 (23:11 -0700)]
util: Remove size from linear_parent creation
None of the callsites took advantage of this, so remove
the feature. This will help to a next change that will
add an opaque type to represent a linear parent.
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25280>
Caio Oliveira [Mon, 18 Sep 2023 02:15:42 +0000 (19:15 -0700)]
util: Use linear parent to (r)allocated extra nodes
Instead of making all the nodes children of the same original
ralloc_ctx, use that context just for the first node (which
is the linear parent). The remaining nodes are (r)allocated
using the first one.
With that change, to free/steal, it is sufficient to apply the
operation to the first node, which uses the underlying linked
list between the nodes at ralloc level. And we can remove
the 'next' pointer in linear_header, now unused.
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25280>
Caio Oliveira [Mon, 18 Sep 2023 01:54:52 +0000 (18:54 -0700)]
util: Remove ralloc_parent from linear_header
We can reach the ralloc parent from the linear parent, since
it is what was used to allocate the linear parent in the first
place.
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25280>
Samuel Pitoiset [Fri, 22 Sep 2023 10:00:53 +0000 (12:00 +0200)]
radv/ci: skip dEQP-VK.robustness.* on Vangogh due to weird GPU hangs
For very weird reasons, this subset hangs on VanGogh only. It took a
while to figure out that and I can't reproduce on my Steam Deck. Skip
the whole subset for now until the issue is figured out to avoid
blocking the CTS update.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24947>
Samuel Pitoiset [Mon, 4 Sep 2023 08:00:37 +0000 (10:00 +0200)]
ci: update to vulkan-cts-1.3.6.3
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24947>
Konrad Dybcio [Mon, 25 Sep 2023 14:30:44 +0000 (16:30 +0200)]
freedreno: Include speedbin fallback in 730 chipid to fix probing
The kernel exposes CHIP_ID, which consists of:
[63:48] const 0 / reserved
[47:32] speedbin (default 0xffff)
[31:0 ] actual gpu chip ID
Fix the 730 chip id to make it probe correctly.
Keep the existing entry for the downstream KGSL driver.
This is essentially the same as Commit
6067aba9e6db ("freedreno: Include
speedbin fallback in 740 chipid to fix probing"), except for the older
core.
Fixes:
cd3719be7d09 ("freedreno: Fully define a730 and a740 device properties")
Signed-off-by: Konrad Dybcio <konrad.dybcio@linaro.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25375>
Rhys Perry [Wed, 20 Sep 2023 18:27:39 +0000 (19:27 +0100)]
aco: reset prefetch in the correct block after removing the exit
fossil-db (navi31):
Totals from 279 (0.35% of 79332) affected shaders:
(no stat changes)
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Fixes:
c778803d673f ("aco/assembler: change prefetch mode on GFX10.3+ during loops if beneficial")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25312>
Lionel Landwerlin [Wed, 30 Aug 2023 08:43:44 +0000 (11:43 +0300)]
intel/ds: avoid dropping traces when running out of shared memory
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Acked-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24744>
Lionel Landwerlin [Wed, 30 Aug 2023 08:43:03 +0000 (11:43 +0300)]
anv/utrace: trace CPU on timestamp buffer readiness
Acked-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24744>
Lionel Landwerlin [Tue, 29 Aug 2023 20:00:17 +0000 (23:00 +0300)]
intel/ds: track number of tracepoint timestamp copies
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Acked-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24744>
Lionel Landwerlin [Tue, 29 Aug 2023 19:59:15 +0000 (22:59 +0300)]
util/u_trace: count number of tracepoints
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Acked-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24744>
Lionel Landwerlin [Tue, 29 Aug 2023 13:40:26 +0000 (16:40 +0300)]
intel/ds: lock submissions to u_trace_context
This allows for submissions to be outside the global anv_device mutex.
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Acked-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24744>
Lionel Landwerlin [Fri, 25 Aug 2023 20:42:17 +0000 (23:42 +0300)]
intel: don't assume Linux minor dev node
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Cc: mesa-stable
Acked-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24744>
Lionel Landwerlin [Wed, 16 Aug 2023 18:16:10 +0000 (21:16 +0300)]
anv: enable utrace timestamp buffer copies on compute engine
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Acked-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24744>
Lionel Landwerlin [Thu, 17 Aug 2023 07:02:45 +0000 (10:02 +0300)]
anv: move utrace flush out of backends
The next patch is going to introduce some locking that needs to happen
before the submission to the backend.
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Acked-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24744>
Lionel Landwerlin [Wed, 16 Aug 2023 14:11:14 +0000 (17:11 +0300)]
anv: move simple shaders code to its own object
We would like to call those function from anv_utrace.c
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Acked-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24744>
Lionel Landwerlin [Wed, 16 Aug 2023 13:55:21 +0000 (16:55 +0300)]
anv: add simple shader support without a command buffer
Limited to compute for now. Annoyingly Gfx9 requires a binding table
block.
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Acked-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24744>
Lionel Landwerlin [Wed, 16 Aug 2023 12:14:08 +0000 (15:14 +0300)]
anv: add a memcpy compute internal kernel
We'll use this memcpy utrace timestamp data.
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Acked-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24744>
Lionel Landwerlin [Fri, 25 Aug 2023 20:15:29 +0000 (23:15 +0300)]
anv: fix utrace timestamp buffer copies
Fixes:
521c216efc ("anv: use COMPUTE_WALKER post sync field to track compute work")
Acked-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24744>
David Rosca [Sat, 23 Sep 2023 13:49:55 +0000 (15:49 +0200)]
frontends/va: Set default rate control values once when creating encoder
Move setting the default values from getEncParamPresetH264/5 as this
function is called on each frame which would result in overwriting
values set by application.
This fixes setting HRD parameters and max_qp/min_qp when
PIPE_VIDEO_CAP_ENC_QUALITY_LEVEL is not supported.
Cc: mesa-stable
Reviewed-by: Ruijing Dong <ruijing.dong@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25355>
David Rosca [Sat, 23 Sep 2023 11:11:57 +0000 (13:11 +0200)]
frontends/va: Process VAEncSequenceParameterBufferType first in vaRenderPicture
The encoder is created in handleVAEncSequenceParameterBufferType and it
also sets some default parameters, so we need to make sure to handle
this buffer first because application may have already set those
parameters from earlier buffers.
This fixes setting HRD parameters with gstreamer vah264enc/vah265enc
when PIPE_VIDEO_CAP_ENC_QUALITY_LEVEL is supported.
Cc: mesa-stable
Reviewed-by: Ruijing Dong <ruijing.dong@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25355>
Eric Engestrom [Fri, 8 Sep 2023 14:58:36 +0000 (15:58 +0100)]
docs: add calendar for 23.3
Normally the branchpoint would have been on Oct 11, but this is the week
before XDC and everyone will be busy so let's try not to add the
branchpoint pressure on top. Let's instead branch off on the week
_after_ XDC, on Oct 25.
Besides, 23.2 has been delayed by multiple factors, so it wouldn't make
sense to rush 23.3.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25122>
Martin Roukala (né Peres) [Thu, 21 Sep 2023 09:35:05 +0000 (12:35 +0300)]
radv/ci: add more tests to the navi21 vkcts flake list
Signed-off-by: Martin Roukala (né Peres) <martin.roukala@mupuf.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25325>
Martin Roukala (né Peres) [Thu, 21 Sep 2023 03:35:13 +0000 (06:35 +0300)]
radv/ci: increase the parallelism of the vkcts-navi21 job
The vkcts-navi21 job currently take ~13 minutes each, but we are about
to start running the VK_EXT_shader_object tests which should
significantly increase our runtime and thus would exceed the 15 minutes.
Signed-off-by: Martin Roukala (né Peres) <martin.roukala@mupuf.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25325>
Juan A. Suarez Romero [Mon, 25 Sep 2023 10:21:28 +0000 (12:21 +0200)]
v3d/shim: include new ioctl parameters
Some new parameters added recently were missed in the DRM shim.
Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com>
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/9880
Signed-off-by: Juan A. Suarez Romero <jasuarez@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25370>
Samuel Pitoiset [Tue, 12 Sep 2023 13:32:41 +0000 (15:32 +0200)]
radv: enable cache counters for RGP on GFX11
This was the last missing RGP feature on GFX11 compared to older chips.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25271>
Samuel Pitoiset [Tue, 12 Sep 2023 15:12:04 +0000 (17:12 +0200)]
radv: add SPM support for GFX11
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25271>
Samuel Pitoiset [Mon, 18 Sep 2023 10:47:44 +0000 (12:47 +0200)]
ac/spm: add support for GFX11
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25271>
Samuel Pitoiset [Tue, 12 Sep 2023 13:16:32 +0000 (15:16 +0200)]
ac/spm: add new segment types for GFX11
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25271>
Samuel Pitoiset [Mon, 18 Sep 2023 12:00:00 +0000 (14:00 +0200)]
ac/gpu_info: define AMD_MAX_WGP
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25271>
Dave Airlie [Thu, 3 Aug 2023 03:02:57 +0000 (13:02 +1000)]
llvmpipe/linear: move to nir inputs
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24436>
Dave Airlie [Thu, 3 Aug 2023 03:00:09 +0000 (13:00 +1000)]
llvmpipe/linear: convert to using nir for output.
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24436>
Dave Airlie [Wed, 2 Aug 2023 06:15:15 +0000 (16:15 +1000)]
llvmpipe/fs: start converting dervied state to nir based.
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24436>
Dave Airlie [Wed, 2 Aug 2023 06:08:26 +0000 (16:08 +1000)]
llvmpipe/fs: start converting interp/input paths to nir.
This input_usage_mask is going to take a bit more thinking
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24436>
Dave Airlie [Wed, 9 Aug 2023 06:26:03 +0000 (16:26 +1000)]
llvmpipe/nir: call gather info to update inputs read properly
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24436>
Dave Airlie [Wed, 30 Aug 2023 01:41:31 +0000 (11:41 +1000)]
gallivm: drop tgsi aos paths.
These were only used by the linear code, and that doesn't use
tgsi anymore
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24436>
Dave Airlie [Thu, 3 Aug 2023 02:53:51 +0000 (12:53 +1000)]
llvmpipe/linear: drop tgsi path.
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24436>
David Heidelberg [Sun, 24 Sep 2023 20:30:22 +0000 (02:00 +0530)]
ci/freedreno: disable broke cheza (Adreno 630) runners
Revert ASAP as `google-freedreno-cheza` gets running again.
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25365>
Gert Wollny [Sun, 24 Sep 2023 17:19:24 +0000 (19:19 +0200)]
r600/sfn: Fix use of scheduled_shader vs shader
Thanks to Vitaliy Kuzmin for pointing this out.
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25364>
Gert Wollny [Sun, 24 Sep 2023 17:14:37 +0000 (19:14 +0200)]
r600/sfn: sort the uniforms of the right shader
Thanks to Vitaly Kuzmin for pointing this out.
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25364>
Faith Ekstrand [Thu, 17 Aug 2023 19:01:42 +0000 (14:01 -0500)]
r600: Use nir_builder helpers for load/store_shared_r600
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24762>
Faith Ekstrand [Thu, 17 Aug 2023 18:26:44 +0000 (13:26 -0500)]
r600: Use more auto-generated nir_builder helpers
Use nir_umad24 instead of rolling our own. Also, all system values
already have NIR builder helpers and we don't need to be manually
building intrinsics or rolling our own helpers.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24762>
Karmjit Mahil [Tue, 19 Sep 2023 12:35:50 +0000 (13:35 +0100)]
pvr: Fix dynamic desc offset storage
The index at which the dynamic descriptor offsets were being
stored was incorrect, leading to some offsets not being stored and
thus `0` being applied as the offset to the descriptors instead.
dEQP test fixed:
dEQP-VK.binding_model.shader_access.{primary,secondary}_cmd_buf
.uniform_buffer_dynamic
.{vertex,fragment,compute,vertex_fragment}
.multiple_discontiguous_descriptor_sets
.*_descriptor.offset_view_{,non}zero_dynamic_nonzero
Fixes:
aa791961a82e ("pvr: Add support for dynamic buffers descriptors")
Signed-off-by: Karmjit Mahil <Karmjit.Mahil@imgtec.com>
Reviewed-by: Frank Binns <frank.binns@imgtec.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25320>
Karmjit Mahil [Mon, 18 Sep 2023 14:36:29 +0000 (15:36 +0100)]
pvr: Fix `for` loop itarator usage
The `i` iteration variable was being used instead of `k` when
appending new mappings, and getting the current source rect.
dEQP test fixed:
dEQP-VK.pipeline.monolithic.image.suballocation.sampling_type
.combined.view_type.3d.format.*.count_1.
.{3x3x3,5x5x5,...(odd dimensions)}
Fixes:
060c3db4efd6 ("pvr: Complete pvr_generate_custom_mapping()")
Reported-by: James Glanville <james.glanville@imgtec.com>
Signed-off-by: Karmjit Mahil <Karmjit.Mahil@imgtec.com>
Reviewed-by: Frank Binns <frank.binns@imgtec.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25321>
Faith Ekstrand [Sat, 23 Sep 2023 15:31:04 +0000 (10:31 -0500)]
nvk: Set GUARDBAND_Z_SCALE_1 when Z-clipping
This fixes most of the remaining dEQP-VK.*.inverted_depth_range.* tests.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25359>
Faith Ekstrand [Fri, 22 Sep 2023 23:03:30 +0000 (18:03 -0500)]
nvk: Enable dynamic clip/clamp enable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25356>
Faith Ekstrand [Fri, 22 Sep 2023 22:56:34 +0000 (17:56 -0500)]
nvk: Fix depth clipping parameters
This is a pretty complete overhaul which I think may actually be correct
and there are now comments explaining why various parameters were
chosen.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25356>
Faith Ekstrand [Fri, 22 Sep 2023 21:33:51 +0000 (16:33 -0500)]
nvk: Clean up viewport math
This should make everything a bit easier to read
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25356>
David Heidelberg [Tue, 19 Sep 2023 12:53:30 +0000 (18:23 +0530)]
iris: do not mention specifically clover for OpenCL support
It's confusing, when rusticl is used.
Acked-by: Karol Herbst <kherbst@redhat.com>
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25287>
David Heidelberg [Fri, 22 Sep 2023 13:49:33 +0000 (19:19 +0530)]
ci/venus: add fragment.32B_in_memory_with_vec4_s32 flake
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25349>
Felix DeGrood [Wed, 13 Sep 2023 22:27:33 +0000 (22:27 +0000)]
anv: fix frame count reporting in INTEL_MEASURE
Report frame count at CB submit time, instead of CB build time.
Reviewed-by: Mark Janes <markjanes@swizzler.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25235>
Faith Ekstrand [Fri, 22 Sep 2023 18:52:19 +0000 (13:52 -0500)]
nvk: Disable statistics around meta ops
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25353>
Faith Ekstrand [Sun, 17 Sep 2023 18:40:28 +0000 (13:40 -0500)]
nvk: Lower interp_at_sample to interp_at_offset
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25353>
Frank Binns [Thu, 21 Sep 2023 09:53:16 +0000 (10:53 +0100)]
pvr: remove pvr_pbe_get_src_pos()
This should have been removed as part of
f59c6eef168 ("pvr: Move PBE START_POS
into csb enum helpers header").
Signed-off-by: Frank Binns <frank.binns@imgtec.com>
Reviewed-by: Karmjit Mahil <Karmjit.Mahil@imgtec.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25328>
Frank Binns [Fri, 8 Sep 2023 15:42:53 +0000 (16:42 +0100)]
pvr: treat VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT as not supported
The required compiler support is missing for mutable format support, so return a
not supported error from vkGetPhysicalDeviceImageFormatProperties2() when the
VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT flag is set in the image format info
structure.
This results in the dEQP-VK.image.mutable.* conformance tests being treated as
Not Supported.
Signed-off-by: Frank Binns <frank.binns@imgtec.com>
Reviewed-by: Karmjit Mahil <Karmjit.Mahil@imgtec.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25241>
Mike Blumenkrantz [Fri, 22 Sep 2023 14:32:40 +0000 (10:32 -0400)]
lavapipe: set default min sample shading to 1
this should only affect shobj handling and even then probably no effect
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25354>
Mike Blumenkrantz [Fri, 22 Sep 2023 14:32:14 +0000 (10:32 -0400)]
lavapipe: set default viewport and scissor count for cmdbufs
this otherwise breaks shobj tests
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25354>
Mike Blumenkrantz [Fri, 22 Sep 2023 14:31:28 +0000 (10:31 -0400)]
lavapipe: more vertex stride fixups
for handling cases where bind2 and dynamic vi are used interchangeably
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25354>
Mike Blumenkrantz [Fri, 22 Sep 2023 14:30:52 +0000 (10:30 -0400)]
lavapipe: always set independent blend
no functional changes, but this is just how vulkan works
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25354>
Mike Blumenkrantz [Fri, 22 Sep 2023 12:21:18 +0000 (08:21 -0400)]
lavapipe: fix variable descriptor count support handling
if no variable counts are present this must be zero, otherwise yolo
fixes:
dEQP-VK.api.maintenance3_check.support_count_combined_image_sampler_extra_bindings_no_variable_size
dEQP-VK.api.maintenance3_check.support_count_combined_image_sampler_no_variable_size
dEQP-VK.api.maintenance3_check.support_count_inline_uniform_block_extra_bindings_no_variable_size
dEQP-VK.api.maintenance3_check.support_count_inline_uniform_block_no_variable_size
dEQP-VK.api.maintenance3_check.support_count_input_attachment_extra_bindings_no_variable_size
dEQP-VK.api.maintenance3_check.support_count_input_attachment_no_variable_size
dEQP-VK.api.maintenance3_check.support_count_sampled_image_extra_bindings_no_variable_size
dEQP-VK.api.maintenance3_check.support_count_sampled_image_no_variable_size
dEQP-VK.api.maintenance3_check.support_count_sampler_extra_bindings_no_variable_size
dEQP-VK.api.maintenance3_check.support_count_sampler_no_variable_size
dEQP-VK.api.maintenance3_check.support_count_storage_buffer_dynamic_extra_bindings_no_variable_size
dEQP-VK.api.maintenance3_check.support_count_storage_buffer_dynamic_no_variable_size
dEQP-VK.api.maintenance3_check.support_count_storage_buffer_extra_bindings_no_variable_size
dEQP-VK.api.maintenance3_check.support_count_storage_buffer_no_variable_size
dEQP-VK.api.maintenance3_check.support_count_storage_image_extra_bindings_no_variable_size
dEQP-VK.api.maintenance3_check.support_count_storage_image_no_variable_size
dEQP-VK.api.maintenance3_check.support_count_storage_texel_buffer_extra_bindings_no_variable_size
dEQP-VK.api.maintenance3_check.support_count_storage_texel_buffer_no_variable_size
dEQP-VK.api.maintenance3_check.support_count_uniform_buffer_dynamic_extra_bindings_no_variable_size
dEQP-VK.api.maintenance3_check.support_count_uniform_buffer_dynamic_no_variable_size
dEQP-VK.api.maintenance3_check.support_count_uniform_buffer_extra_bindings_no_variable_size
dEQP-VK.api.maintenance3_check.support_count_uniform_buffer_no_variable_size
dEQP-VK.api.maintenance3_check.support_count_uniform_texel_buffer_extra_bindings_no_variable_size
dEQP-VK.api.maintenance3_check.support_count_uniform_texel_buffer_no_variable_size
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25354>
Mike Blumenkrantz [Wed, 16 Aug 2023 10:41:48 +0000 (06:41 -0400)]
zink: always trace_screen_unwrap in acquire
it's possible for acquire to be called from the frontend, in which
case the screen will still be trace-wrapped
cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25288>
Mike Blumenkrantz [Tue, 19 Sep 2023 12:53:42 +0000 (08:53 -0400)]
zink: avoid UAF on wayland async present with to-be-retired swapchain
wayland surfaces are likely to become unlinked in WSI implementations upon
retiring a swapchain, requiring the pending present to complete
in order to avoid invalid access
cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25288>
Mike Blumenkrantz [Tue, 19 Sep 2023 13:01:45 +0000 (09:01 -0400)]
zink: move swapchain fence to swapchain object
this is more accurate in terms of usage/ownership and avoids potential
illegal fence usage in the scenario where multiple async presents are
in flight
cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25288>
Rob Clark [Thu, 21 Sep 2023 00:08:47 +0000 (17:08 -0700)]
freedreno/decode: Remove gpu_id
Now unused.
Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25333>
Rob Clark [Thu, 21 Sep 2023 00:06:02 +0000 (17:06 -0700)]
freedreno/decode: Use info->chip to decode
Use the chip generation in cases where decoding is generation specific,
rather than range testing gpu_id.
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/9310
Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25333>
Rob Clark [Wed, 20 Sep 2023 22:59:18 +0000 (15:59 -0700)]
freedreno/decode: Lookup device info
First step for migration to chip_id. With newer devices we won't be
able to decode the chip_id in any meaningful way, ie. it is just a
number. But we can use the device table to figure out things like
generation which are needed to properly decode cmdstream, etc.
Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25333>
Caio Oliveira [Thu, 14 Sep 2023 15:22:57 +0000 (08:22 -0700)]
util: Add more PRINTFLIKE and MALLOCLIKE annotations
Reviewed-by: Yonggang Luo <luoyonggang@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25230>
Caio Oliveira [Fri, 22 Sep 2023 17:23:06 +0000 (10:23 -0700)]
microsoft/compiler: Fix printf formatting string issues
Found when adding PRINTFLIKE macro to util functions.
Suggested-by: Eric Engestrom <eric@igalia.com>
Reviewed-by: Eric Engestrom <eric@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25230>
Caio Oliveira [Thu, 21 Sep 2023 20:35:42 +0000 (13:35 -0700)]
intel/compiler: Don't allocate memory for SIMD select error handling
The position in the error array already indicate the SIMD in question,
so take off all the formatted printing from the errors -- which in some
cases were just not needed. We lose a little bit of extra context but
it is all easily derivable from the message and the SIMD.
This also will remove the overhead when SIMD selection is being used to
just to find the selected dispatch width -- at a point where the shaders
were already compiled -- and the errors are not used at all.
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/9849
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25336>
Caio Oliveira [Fri, 22 Sep 2023 07:02:35 +0000 (00:02 -0700)]
compiler: Only enable mesaclc helper if we have OpenCL SPIR-V support
Reviewed-by: Karol Herbst <kherbst@redhat.com>
Reviewed-by: Eric Engestrom <eric@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25341>
Caio Oliveira [Fri, 22 Sep 2023 06:58:55 +0000 (23:58 -0700)]
clover: Only compile/depend libclspirv and libclnir when using SPIR-V support
Reviewed-by: Karol Herbst <kherbst@redhat.com>
Reviewed-by: Eric Engestrom <eric@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25341>
Caio Oliveira [Fri, 22 Sep 2023 06:50:14 +0000 (23:50 -0700)]
clover: Hide SPIR-V related code behind HAVE_CLOVER_SPIRV
Reviewed-by: Karol Herbst <kherbst@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25341>
Caio Oliveira [Wed, 20 Sep 2023 18:40:24 +0000 (11:40 -0700)]
rusticl: Ensure NIR generated headers will be available
Reviewed-by: Eric Engestrom <eric@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25314>
Caio Oliveira [Wed, 20 Sep 2023 18:44:36 +0000 (11:44 -0700)]
meson: Remove unnecessary inc_compiler mentions
The inc_compiler should come as part of idep_compiler, idep_nir or
idep_nir_headers dependency.
Acked-by: Eric Engestrom <eric@igalia.com>
Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com> (v3dv)
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25314>
Caio Oliveira [Wed, 20 Sep 2023 18:22:22 +0000 (11:22 -0700)]
compiler: Use a meson dependency for libcompiler
That will make sure the include directories are passed on and also
make sure the generated headers are properly built before whoever code
depends on it. NIR dependency propagates that dependency too.
Since the right include directory is always propagated, we can remove
the extra "compiler/" prefix from the `#include`s in glsl_types.h.
Note: NIR has a special "header only" dependency, so include the
generated headers for compiler there too.
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/9843
Reviewed-by: Eric Engestrom <eric@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25314>
Helen Koike [Thu, 14 Sep 2023 23:32:07 +0000 (20:32 -0300)]
ci: separate hiden jobs to -inc.yml files
make it easier to re-use the hidden jobs by other project (e.g. linux)
without enabling the executable jobs.
Signed-off-by: Helen Koike <helen.koike@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25238>
Mike Blumenkrantz [Thu, 21 Sep 2023 17:50:10 +0000 (13:50 -0400)]
zink: fix semaphore signal ordering
the timeline semaphore must always be on the last submit in order to
mimic fence behavior
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25334>
Mike Blumenkrantz [Wed, 6 Sep 2023 11:48:24 +0000 (07:48 -0400)]
zink: add a ZINK_DEBUG=validation alias
typing validation all the time makes my hands hurt
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25290>
Mike Blumenkrantz [Tue, 5 Sep 2023 19:03:17 +0000 (15:03 -0400)]
zink: set workgroup_memory_explicit_layout for shader validation
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25290>
Mike Blumenkrantz [Thu, 6 Apr 2023 23:22:08 +0000 (19:22 -0400)]
lavapipe: set separate_shaders for shader objects
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25292>
Mike Blumenkrantz [Fri, 18 Aug 2023 17:53:00 +0000 (13:53 -0400)]
zink: delete a non-maintenance5 workaround for shobj use
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25289>
Mike Blumenkrantz [Fri, 18 Aug 2023 17:52:52 +0000 (13:52 -0400)]
zink: require maintenance5 for shobj
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25289>
Mike Blumenkrantz [Fri, 18 Aug 2023 17:48:38 +0000 (13:48 -0400)]
zink: delete injected pointsize during shader creation
maintenance5 is best maintenance.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25289>
Konstantin Seurer [Wed, 20 Sep 2023 16:07:42 +0000 (18:07 +0200)]
lavapipe/ci: Fix asan expectations
Those failures were fixed in
b2f6de8f0d86b8143084212f970af072780fc201.
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25309>
Konstantin Seurer [Mon, 18 Sep 2023 16:32:07 +0000 (18:32 +0200)]
nir/deref: Layer rematerialization helpers
nir_rematerialize_derefs_in_use_blocks_impl can be implemented on top of
nir_rematerialize_deref_in_use_blocks.
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23712>
Konstantin Seurer [Fri, 28 Jul 2023 15:09:34 +0000 (17:09 +0200)]
nir/lcssa: Fix rematerializing derefs
This would pull derefs out of loops by emitting the pattern
`deref(phi(deref))` which is not allowed by nir_validate.
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23712>
Konstantin Seurer [Fri, 28 Jul 2023 15:07:49 +0000 (17:07 +0200)]
nir: Add nir_rematerialize_deref_in_use_blocks
nir_rematerialize_deref_in_use_blocks can be used in passes that don't
run on the whole function.
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23712>
Rhys Perry [Fri, 23 Jun 2023 14:39:32 +0000 (15:39 +0100)]
nir/deref: remove rematerialize_deref_in_block cache
Nothing was ever inserted into this.
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Konstantin Seurer <konstantin.seurer@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23712>
Konstantin Seurer [Wed, 20 Sep 2023 14:32:07 +0000 (16:32 +0200)]
nir: Add nir_foreach_block_in_cf_node_reverse
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23712>
Konstantin Seurer [Wed, 20 Sep 2023 14:31:05 +0000 (16:31 +0200)]
nir: Add nir_cf_node_cf_tree_prev
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23712>
Eric Engestrom [Fri, 22 Sep 2023 07:56:24 +0000 (08:56 +0100)]
ci/zink+radv: bump the timeout of zink-radv-navi10-valve by 10 minutes
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25342>
Eric Engestrom [Fri, 22 Sep 2023 07:55:33 +0000 (08:55 +0100)]
ci/zink+radv: specify that zink-radv-navi10-valve should run in the mupuf farm
Fixes:
8c98ee6f3addb1d1b41d ("radv/ci: move vkcts-navi10 testing to KWS")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25342>
Corentin Noël [Tue, 19 Sep 2023 14:33:05 +0000 (16:33 +0200)]
virgl: Cover all the formats defined in the virgl definition
Add all the formats currently defined in u_formats.h
Also make sure that no format on virgl protocol has the same number as another one.
Make so that the virgl_formats_conv_table is following the same order as virgl_formats
Signed-off-by: Corentin Noël <corentin.noel@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25295>
Konstantin Seurer [Tue, 15 Aug 2023 12:55:10 +0000 (14:55 +0200)]
aco/spill: Make sure that offset stays in bounds
If a shader spills a lot, the offset can be above the HW limit.
cc: mesa-stable
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24652>
Rob Clark [Thu, 21 Sep 2023 21:27:44 +0000 (14:27 -0700)]
freedreno/fence: Hold a strong ref to batch
We don't want a unflushed fence to outlive it's batch, otherwise we run
into trouble when it comes time to wait on the fence. For ex:
1. Create a fence before framebuffer state is set, with the
PIPE_FLUSH_DEFERRED flags. This creates a new batch, to which the
ctx holds the only reference (unless the fence also holds a ref)
2. set_framebuffer_state() creates a new batch and drops the ctx->batch
reference.
3. Later something tries to wait on the fence
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/8621
Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25337>