Commit graph

171986 commits

Author SHA1 Message Date
Hans-Kristian Arntzen
5266bb0211 Fix DGC bug where indirect count > maxSequencesCount.
Need to explicitly clamp the indirect count against maxSequencesCount,
or we risk writing bogus commands into spill region.

Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23252>
2023-05-31 07:49:54 +00:00
Samuel Pitoiset
1947500208 aco: remove nir_intrinsic_load_barycentric_at_sample occurences
This is lowered earlier and shouldn't get there.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23307>
2023-05-31 07:25:46 +00:00
Dave Airlie
54ceec8d9e radv/meta: fix uninitialised stack memory usage.
==10199== Conditional jump or move depends on uninitialised value(s)
==10199==    at 0xA107B13: radv_resume_queries (radv_meta.c:93)
==10199==    by 0xA108097: radv_meta_restore (radv_meta.c:225)
==10199==  Uninitialised value was created by a stack allocation
==10199==    at 0xA1145B2: fill_buffer_shader (radv_meta_buffer.c:171)

saved_state is never memset, so the value should be inited.

Cc: mesa-stable
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23327>
2023-05-31 06:52:46 +00:00
Vinson Lee
ed2d771931 r600/sfn: Initialize BlockScheduler member m_chip_family.
Fix defect reported by Coverity Scan.

Uninitialized scalar field (UNINIT_CTOR)
uninit_member: Non-static class member m_chip_family is not initialized
in this constructor nor in any functions that it calls.

Fixes: e57643cf54 ("r600/sfn: Add handling for R600 indirect access alias handling")
Signed-off-by: Vinson Lee <vlee@freedesktop.org>
Reviewed-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23290>
2023-05-31 06:18:47 +00:00
Lucas Fryzek
673acc3d01 v3dv: Update texture padding logic to match v3d changes
Piglit tests for v3d highlighted issues with the padding
computation when allocating memory for slices. This change
moves the fixes from v3d to v3dv.

Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23260>
2023-05-31 05:27:08 +00:00
Lucas Fryzek
10b4b3bf3f v3d: Add support for ASTC texture compression
Add proper support for ASTC texture compression in the v3d
gallium driver, instead of relying on the fallback software
conversion from gallium, as the hardware has native support
for ASTC compressed textures.

Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23260>
2023-05-31 05:27:08 +00:00
Mike Blumenkrantz
0a3ddcbe8b vulkan: use cmd size array for queued cmd allocations
minor simplification for consistency

Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23322>
2023-05-31 03:13:22 +00:00
Mike Blumenkrantz
fd45ab843f vulkan/cmd_queue: expose cmd sizes
now that cmds are more precisely allocated, it's necessary for drivers
to have some way to determine what the allocation size is

Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23322>
2023-05-31 03:13:22 +00:00
Mike Blumenkrantz
5759ab668e vulkan/cmd_queue: allocate cmds based on the size of the cmd
the base size of a vk_cmd_queue_entry is massive since there are a couple
union entries that have a trillion params. by allocating conditionally using
the union member size, memory can be reduced, which will affect some user-facing
api properties

Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23322>
2023-05-31 03:13:22 +00:00
Mike Blumenkrantz
96a404cf82 vulkan: reorder vk_cmd_queue_entry
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23322>
2023-05-31 03:13:22 +00:00
Julia Tatz
223c0ecd1e zink/ci: update expected results
Remove the now passing arb_compute_variable_group_size tests

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23244>
2023-05-31 02:48:33 +00:00
Julia Tatz
2f3841339c zink: fix layout(local_size_variable) for vk1.3+
Use the correct exec-mode op for LocalSizeId
Corrected typo `gl_LocalGroupSize` -> `gl_LocalGroupSizeARB`

Fixes: 99bd1eaf ("zink: use spir-v 1.6 local-size when needed")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23244>
2023-05-31 02:48:33 +00:00
Yiwei Zhang
112e16b14d docs/venus: advertise VK_EXT_image_2d_view_of_3d
Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23090>
2023-05-30 22:52:12 +00:00
Yiwei Zhang
2db9536ade venus: enable VK_EXT_image_2d_view_of_3d
Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23090>
2023-05-30 22:52:12 +00:00
Yiwei Zhang
83018a7854 venus: sync protocol for VK_EXT_image_2d_view_of_3d
Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23090>
2023-05-30 22:52:11 +00:00
Yiwei Zhang
c18b7a2082 venus: sync to latest protocol from header v1.3.248
This is to make later protocol update CL to be easily backported to
older branches.

Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23090>
2023-05-30 22:52:11 +00:00
Yiwei Zhang
2b551d100b venus: silence -Wuninitialized
Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23090>
2023-05-30 22:52:11 +00:00
Mark Janes
d0669f3ede intel/dev: switch defect identifiers to use lineage numbers
Update existing workarounds when necessary to match changed
identifiers.

Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23226>
2023-05-30 22:13:41 +00:00
Rob Clark
b94d35f74d freedreno: Reallocate on unshared export
If we need to export a handle on a resource which was not originally
allocated with PIPE_BIND_SHARED, then re-allocate with shared flag and
try again.

Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/9110
Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23324>
2023-05-30 21:37:13 +00:00
Rob Clark
75193262fd freedreno: Add aux-context support
A global aux-context can be created on-demand for cases where we need to
(for example) blit a resource when we only have a screen ptr.

Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23324>
2023-05-30 21:37:12 +00:00
Rob Clark
221a6986ba freedreno: Handle export error handling
Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23324>
2023-05-30 21:37:12 +00:00
Rob Clark
7cc8185ca3 freedreno/drm: Don't try to export suballoc bo
Suballoc BOs don't have a real handle, so attempting to dmabuf export
won't work.  Likewise for handle or flink-name export.

Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23324>
2023-05-30 21:37:12 +00:00
Alyssa Rosenzweig
be705ce760 nir/print: Print locations for geometry shader inputs
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Acked-by: Caio Oliveira <caio.oliveira@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23259>
2023-05-30 16:25:07 -04:00
Alyssa Rosenzweig
065db2ddad intel/blorp: Use nir_trim_vector
With Coccinelle patch:

@@
expression b, V;
@@

-nir_vec2(b, nir_channel(b, V, 0), nir_channel(b, V, 1))
+nir_trim_vector(b, V, 2)

@@
expression b, V;
@@

-nir_vec3(b, nir_channel(b, V, 0), nir_channel(b, V, 1), nir_channel(b, V, 2))
+nir_trim_vector(b, V, 3)

Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Acked-by: Jesse Natalie <jenatali@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23259>
2023-05-30 16:24:21 -04:00
Alyssa Rosenzweig
4486009edb radv/query: Use nir_trim_vector
With Coccinelle patch:

@@
expression b, V;
@@

-nir_vec2(b, nir_channel(b, V, 0), nir_channel(b, V, 1))
+nir_trim_vector(b, V, 2)

@@
expression b, V;
@@

-nir_vec3(b, nir_channel(b, V, 0), nir_channel(b, V, 1), nir_channel(b, V, 2))
+nir_trim_vector(b, V, 3)

Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Acked-by: Jesse Natalie <jenatali@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23259>
2023-05-30 16:24:21 -04:00
Alyssa Rosenzweig
2b2685f551 pan/lower_framebuffer: Use nir_replicate
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Italo Nicola <italonicola@collabora.com>
Acked-by: Jesse Natalie <jenatali@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23259>
2023-05-30 16:24:21 -04:00
Alyssa Rosenzweig
ebf4eff7eb treewide: Use nir_replicate
Via coccinelle.

Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Acked-by: Jesse Natalie <jenatali@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23259>
2023-05-30 16:24:21 -04:00
Alyssa Rosenzweig
f534c2c539 nir/builder: Add nir_replicate helper
Splat a scalar to all components of a vector.

Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Acked-by: Jesse Natalie <jenatali@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23259>
2023-05-30 16:24:21 -04:00
Veerabadhran Gopalakrishnan
11c8b84c53 radeonsi: return kernel queried video capability for HEVC and JPEG
Query and return the values obtained from kernel for VCN_1 and above.
Earlier the HEVC and JPEG capabilities were returned based on
pre-defined values.

Signed-off-by: Veerabadhran Gopalakrishnan <veerabadhran.gopalakrishnan@amd.com>
Reviewed-by: Thong Thai <thong.thai@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23067>
2023-05-30 19:15:12 +00:00
Veerabadhran Gopalakrishnan
af8f04e9fe radeonsi: return kernel queried video capability for HEVC and JPEG
Query and return the values obtained from kernel for VCN_1 and above.
Earlier the HEVC and JPEG capabilities were returned based on
pre-defined values.

Signed-off-by: Veerabadhran Gopalakrishnan <veerabadhran.gopalakrishnan@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23067>
2023-05-30 19:15:12 +00:00
Konstantin Seurer
a2ae6518c2 gallivm: Fix gather/scatter types for newer llvm
The types changed with opaque pointer support.

Fixes a bunch of lavapipe regressions.
Cc: mesa-stable

Reviewed-by: Roland Scheidegger <sroland@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23293>
2023-05-30 18:25:49 +00:00
Eric Engestrom
74704cbb18 docs/calendar: add 23.2 branchpoint and release candidates
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23205>
2023-05-30 18:20:20 +00:00
Dylan Baker
631109f8f7 docs: update calendar for 23.0.4
At this point I'm calling 23.0 done. Please use 23.1 for future updates

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23325>
2023-05-30 18:15:28 +00:00
Dylan Baker
cf2a9e2c15 docs: Add sha256 sum for 23.0.4
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23325>
2023-05-30 18:15:28 +00:00
Dylan Baker
d4f612b30d docs: add release notes for 23.0.4
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23325>
2023-05-30 18:15:28 +00:00
Jesse Natalie
84691dfc46 microsoft/compiler: Use image formats to determine texture types
Fixes some tests when bindless is disabled, where the image format is
R32, we do atomics on it, but we didn't set the "typed UAV load with
additional formats" feature bit because when we loaded from it, we
only loaded one component. Since the image format on the DXIL side
was declared as U32x4, the DXIL validator said that we should have.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23266>
2023-05-30 17:54:18 +00:00
Jesse Natalie
431557e38e spirv2dxil: Assign formats to image vars before lowering to bindless
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23266>
2023-05-30 17:54:18 +00:00
Jesse Natalie
a66d1e4d1f microsoft/compiler: Add a pass to assign image formats based on number of components
For loads/stores without formats, let's guess one based on how it's used.
The actual format doesn't matter, we just want to use it for the number
of components it has.

Also copy image formats from variables to intrinsics, to ensure that
deref-based intrinsics have formats assigned and lowered intrinsics
are up to date.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23266>
2023-05-30 17:54:18 +00:00
Jesse Natalie
0c8c77b1b0 microsoft/compiler: Enable emitting type info for textures with <4 comps
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23266>
2023-05-30 17:54:18 +00:00
Hans-Kristian Arntzen
a3507f9d87 radv/amdgpu: Report 48-bit VAs in bo logs.
More ergonomic when correlating with page fault addresses.

Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23256>
2023-05-30 17:17:58 +00:00
Chia-I Wu
063e2e8ed8 radv: fix gl_SampleMaskIn for sample shading
When sample shading, we need

  gl_SampleMaskIn = SampleCoverage & (PsIterMask << gl_SampleID);

Add a new shader arg, ps_iter_mask, to pass PsIterMask to ps.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23265>
2023-05-30 16:35:31 +00:00
Chia-I Wu
0bba0eb0df ac, radeonsi: add and use ac_get_ps_iter_mask
It is more natural for ac_get_ps_iter_mask to take sample count.
Replace samplemask_log_ps_iter by ps_iter_smples in
ac_nir_lower_ps_options accordingly.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23265>
2023-05-30 16:35:30 +00:00
Chia-I Wu
750d641ca6 aco: fix alignment check in emit_load
align_offset already takes const_offset into consideration.  Remove the
adjustment.

Fixes: 542733dbbf ("aco: add emit_load helper")
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/9097
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23242>
2023-05-30 16:02:34 +00:00
Lionel Landwerlin
25c1f325d0 anv: remove unused functions
I thought I removed those, it seems my rebase got screwed up :(

Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Fixes: 64f20cec28 ("anv: prepare image/buffer views for non indirect descriptors")
Acked-by: Caio Oliveira <caio.oliveira@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23317>
2023-05-30 15:14:49 +00:00
Lionel Landwerlin
d17af98abc anv: add support for VK_EXT_dynamic_rendering_unused_attachments
Reviewed-by: José Roberto de Souza <jose.souza@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23294>
2023-05-30 14:45:49 +00:00
Erik Faye-Lund
b50c9ba692 zink: do not lower line-smooth for non-lines
We used to do this correctly, but it seems this accidentally got
dropped.

Fixes: d80a35a7f7 ("zink: unified `zink_set_primitive_emulation_keys` and `zink_create_primitive_emulation_gs`")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23316>
2023-05-30 14:24:25 +00:00
Erik Faye-Lund
ffc77d5262 zink: compute correct location for line-smooth gs
The GS and the FS needs to agree on the driver_location. But we just
used the num_outputs variable for the GS instead of matching the logic
from lower_aaline_instr in nir_draw_helpers.c.

This does that, but cleans up our copy slightly to avoid computing the
needless location, as well as using unsigned values.

This used to *mostly* work before, but only because we were lucky and
not too much crazy stuff went on with the inputs / outputs in
smooth-line cases.

Fixes: edecb66b01 ("nir: avoid generating conflicting output variables")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23316>
2023-05-30 14:24:25 +00:00
Erik Faye-Lund
955a6ffa6e zink: keep gl46_optimal extensions/features sorted
These are mostly sorted, which makes it easy to know where to insert new
stuff. Let's make them completely sorted.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23316>
2023-05-30 14:24:25 +00:00
Mike Blumenkrantz
c6ef6a39cc zink: explicitly avoid ci errors due to unrecognized extensions in VVL
lavapipe still had this from shader object, but this should always be in
place for all drivers so that old VVL doesn't block merges

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23315>
2023-05-30 14:00:36 +00:00
Erik Faye-Lund
bf97afa2ab zink: update profiles schema
We technically need the 251 version, but the schema for that version
is not released yet, so this is the best we can do.

See https://github.com/KhronosGroup/Vulkan-Profiles/issues/437

This gets rid of some JSON schema-validation warnings.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23308>
2023-05-30 13:34:44 +00:00