Commit graph

208113 commits

Author SHA1 Message Date
Konstantin Seurer
5ec02e9d0f lavapipe: Advertise VK_EXT_tooling_info support
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26282>
2025-07-07 23:05:11 +00:00
Mike Blumenkrantz
66ba87d717 zink: support NV_timeline_semaphore
this is just adding new value arrays to the existing semaphore mechanics

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35866>
2025-07-07 21:18:29 +00:00
Mike Blumenkrantz
035d837a92 gallium: fix timeline semaphore value passing
using a screen method for this is broken since the value can change
before it is flushed. it must be passed along with the methods that use it

Acked-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35866>
2025-07-07 21:18:29 +00:00
Mike Blumenkrantz
ab1dbd0899 zink: capture KHR_timeline_semaphore properties
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35866>
2025-07-07 21:18:29 +00:00
Mike Blumenkrantz
6e8b9e143d mesa: support NV_timeline_semaphore
this is for use with vulkan interop and carries the same mechanics

Acked-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35866>
2025-07-07 21:18:29 +00:00
Mike Blumenkrantz
03e5a63058 zink: fix signaling multiple API semaphores
it's possible for multiple user semaphores to be signaled in one batch,
and these all have the same mechanics as wait semaphores, which means
they unfortunately need their own submit in order to preserve ownership
when resetting the batch state

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35866>
2025-07-07 21:18:28 +00:00
Mike Blumenkrantz
d65c37f72e mesa: PIPE_FD_TYPE_TIMELINE_SEMAPHORE -> PIPE_FD_TYPE_TIMELINE_SEMAPHORE_D3D12
functionally this is the same as other types of timeline semaphores, but
it is not actually the same as other types of timeline semaphores, e.g.,
in vulkan it would be VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT
whereas other types of timeline semaphores would have different handle types

Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Acked-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35866>
2025-07-07 21:18:28 +00:00
Mike Blumenkrantz
5f7e42706d mesa: set semaphore type directly during creation
this ensures the active type always matches

Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Acked-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35866>
2025-07-07 21:18:27 +00:00
Mike Blumenkrantz
488b1704e7 mesa: unify creation of real semaphore objects
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Acked-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35866>
2025-07-07 21:18:27 +00:00
Eric R. Smith
6c64ad934f panfrost: spill registers in SSA form
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Before doing register allocation, use information available from
the SSA representation to determine register pressure and to
spill registers. This spilling doesn't have to be perfect (the
register allocator is still allowed to spill) but it will be
much faster to do the SSA spilling than RA spilling. In general
this should vastly improve the performance of register allocation.

Reviewed-by: Mary Guillemard <mary.guillemard@collabora.com>
Acked-by: Boris Brezillon <boris.brezillon@collabora.com>
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34446>
2025-07-07 19:49:37 +00:00
Lionel Landwerlin
67e452669e anv: do not rely on sampler objects for pipeline compilation
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Descriptor set layout lifetime can be shorter than what the
implementation requires. One example is :
  * create descriptor set layout
  * create graphics pipeline library
  * destroy descriptor set layout
  * link optimize library in a final pipeline

The last step might need the descriptor set layout information again.

We've so far worked around this by taking a reference on the
descriptor set layout in the pipelines. But we forgot that descriptor
set layouts have pointers to samplers (for immutable & embedded
samplers).

We could take a reference to samplers but that sucks for various
reasons :
  - it consumes dynamic state heap space
  - it could cause issues with capture-replay placement

So instead we copy the information from the samplers that might be
needed in cases like link optimization. This includes :
  - ycbcr conversion state (used for NIR lowering)
  - embedded sampler data (to recreate the sampler)

Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Cc: mesa-stable
Reviewed-by: Ivan Briano <ivan.briano@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35955>
2025-07-07 18:53:53 +00:00
Lionel Landwerlin
98bc185376 anv: rework embedded sampler hashing
Create a hashing key on all samplers so we can just copy that anywhere
we need it. That key already contains the needed parameters for
embedded samplers, so the sha1 stuff can go away.

Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Ivan Briano <ivan.briano@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35955>
2025-07-07 18:53:53 +00:00
Sushma Venkatesh Reddy
fa0232d961 intel/executor: Add missing dependency to fix intermittent build failures
The executor build was failing randomly due to a missing dependency on
`idev_intel_dev`. This patch adds the required dependency to the
`meson.build` file to ensure consistent and reliable builds across
different configurations.

Reviewed-by: Caio Oliveira <caio.oliveira@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35928>
2025-07-07 18:35:56 +00:00
Yiwei Zhang
0282ce8211 venus: back out implicit fencing handling for NV proprietary
It is a tech debt now since NV proprietary is on sw wsi path, and
rendering to the prime blit dst buffer  may never get supported there.
For later, when performance optimization is needed for venus on nv, we
can downgrade the sw wsi device workaround to a venus dri config, so
that setups with tiled explicit modifier support can be perf optimal.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35984>
2025-07-07 18:16:34 +00:00
Yiwei Zhang
054c8e117e venus: fix a prime blit assert
The assert doesn't consider multiple queue family case where the same
blit cmd has to be recorded for each, thus hitting the assert for the
same image and buffer.

Fixes: 5535184539 ("venus: track prime blit dst buffer memory in the wsi image")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35984>
2025-07-07 18:16:34 +00:00
Sushma Venkatesh Reddy
c89d788ffb docs: Add INTEL_DEBUG_BKP_BEFORE/AFTER_DISPATCH_COUNT
Reviewed-by: Sagar Ghuge <sagar.ghuge@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35353>
2025-07-07 17:43:41 +00:00
Sushma Venkatesh Reddy
29fc96cb80 anv: Add GPU breakpoint before/after specific compute dispatch call
Reviewed-by: Sagar Ghuge <sagar.ghuge@intel.com>
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/13089
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35353>
2025-07-07 17:43:41 +00:00
Sushma Venkatesh Reddy
172e475705 intel: Add env variable to add break point on/before compute dispatch
Reviewed-by: Sagar Ghuge <sagar.ghuge@intel.com>
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/13089
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35353>
2025-07-07 17:43:40 +00:00
Mike Blumenkrantz
213874d42b zink: use unsynchronized cmdbuf for unsynchronized image GENERAL barriers
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
this fixes all the random sync issues

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35979>
2025-07-07 16:07:54 +00:00
Jesse Natalie
09096189c0 mediafoundation: Use C++ brace initialization instead of C-style
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35900>
2025-07-07 15:41:29 +00:00
Jesse Natalie
eca4743535 mediafoundation: Fix fence handling
- Use the right fence_wait method on the codec instead of the screen.
- Use fence_wait instead of using shared handles to wait.
- Release fence references.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35900>
2025-07-07 15:41:28 +00:00
Jesse Natalie
5f3a7cee83 gallium/video: Frontends separate in_fence and out_fence
Reviewed-by: Ruijing Dong <ruijing.dong@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35900>
2025-07-07 15:41:28 +00:00
Sil Vilerino
9fc42666f4 d3d12: Remove requirement of surface creation/clearing functions for video
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35900>
2025-07-07 15:41:27 +00:00
Jesse Natalie
1959a352ea d3d12: Fix video fence lifetime issues
pipe_fence_handle is a refcounted object, it can't be owned by a container
which might have a different lifetime, it needs a dedicated heap allocation
so it can outlive its container.

Make sure that when we're handing out pipe_fence_handle references, that
we add a ref to them before handing them out.

Instead of assuming that a fence_wait call is for the exact fence that we
returned from a given op, mirror what's done on graphics and
opportunistically scan the batches to see what's done, and reclaim
resources for them.

Use d3d12_fence helpers to replace a lot of duplicated code.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35900>
2025-07-07 15:41:27 +00:00
Jesse Natalie
e9301b36fe d3d12: Store fence FD type in the fence
Native sync fences represent point-in-time (fence + value) and can have
CPU wait events. Timeline semaphores represent a full timeline, do not
have a CPU wait event, and can have their value updated dynamically.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35900>
2025-07-07 15:41:27 +00:00
Mike Blumenkrantz
f335158cfa zink: always insert current batch sparse semaphore into sparse wait chain
this avoids desync in the case where a batch performs multiple distinct
sparse commit operations

cc: mesa-stable

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35978>
2025-07-07 15:21:27 +00:00
Mike Blumenkrantz
de9b4f1ae5 zink: move HIC resource usage check into hic transition function
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35976>
2025-07-07 10:48:07 -04:00
Rhys Perry
34f1a8f707 aco: handle FPAtomicToDenormModeHazard
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
This is quite unlikely to happen, but I guess it might be possible and
it's relatively simple to work around.

Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35884>
2025-07-07 13:02:43 +00:00
Yogesh Mohan Marimuthu
d9e5e8f5fc winsys/amdgpu: pass r/w bo to w/r list in userq_wait ioctl
bo with write usage should wait for read and write fence. bo
with read usage should wait for write fence. Currently wrote bos
are passed to write list and read bos are passed to read like.
This patch fixes the issue.

Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35963>
2025-07-07 12:34:25 +00:00
Patrick Lerda
9e5d11bff3 r600: fix emit_ssbo_store() wrmask compatibility
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
This issue was generating unwanted write accesses that
could overwrite previous operations.

Note: This functionality could also be tested with
nir_lower_wrmasks. This problem seems to only affect
the ssbos.

This change was tested on cypress, barts and cayman. Here are the tests fixed:
khr-gl4[3-6]/compute_shader/pipeline-pre-vs: fail pass
khr-gl4[5-6]/direct_state_access/queries_functional: fail pass
khr-gl4[5-6]/es_31_compatibility/shader_image_load_store/advanced-cast-cs: fail pass
khr-gl4[5-6]/es_31_compatibility/shader_image_load_store/advanced-cast-fs: fail pass
khr-gl4[5-6]/es_31_compatibility/shader_storage_buffer_object/advanced-switchbuffers-cs: fail pass
khr-gl4[5-6]/es_31_compatibility/shader_storage_buffer_object/advanced-switchprograms-cs: fail pass
khr-gl4[5-6]/es_31_compatibility/shader_storage_buffer_object/basic-operations-case1-cs: fail pass
khr-gl4[3-6]/shader_storage_buffer_object/advanced-switchbuffers-cs: fail pass
khr-gl4[3-6]/shader_storage_buffer_object/advanced-switchprograms-cs: fail pass
khr-gl4[3-6]/shader_storage_buffer_object/basic-operations-case1-cs: fail pass
khr-gl4[4-6]/texture_buffer/texture_buffer_max_size: fail pass
khr-gles31/core/compute_shader/pipeline-pre-vs: fail pass
khr-gles31/core/shader_image_load_store/advanced-cast-cs: fail pass
khr-gles31/core/shader_image_load_store/advanced-cast-fs: fail pass
khr-gles31/core/shader_storage_buffer_object/advanced-switchbuffers-cs: fail pass
khr-gles31/core/shader_storage_buffer_object/advanced-switchprograms-cs: fail pass
khr-gles31/core/shader_storage_buffer_object/basic-operations-case1-cs: fail pass
khr-gles31/core/texture_buffer/texture_buffer_max_size: fail pass
khr-glesext/texture_buffer/texture_buffer_max_size: fail pass

Cc: mesa-stable
Signed-off-by: Patrick Lerda <patrick9876@free.fr>
Reviewed-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35830>
2025-07-07 12:08:15 +00:00
Marek Olšák
b31f73a1b1 ac/nir: use u_foreach_bit more
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35345>
2025-07-07 11:41:57 +00:00
Marek Olšák
896dd9bc93 ac/nir: eliminate sample_id/sample_pos if MSAA is disabled
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35345>
2025-07-07 11:41:57 +00:00
Marek Olšák
1c2007005e ac/nir: rename force_center_interp_no_msaa to msaa_disabled
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35345>
2025-07-07 11:41:57 +00:00
Juan A. Suarez Romero
3c7a8b4913 broadcom/ci: update expected results
Add new failures/flakes.

Signed-off-by: Juan A. Suarez Romero <jasuarez@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35964>
2025-07-07 11:07:40 +00:00
Juan A. Suarez Romero
044800cf5a vc4/ci: disable skqp job
This is quite unstable, with lots of hangs. So just disable it.

Signed-off-by: Juan A. Suarez Romero <jasuarez@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35964>
2025-07-07 11:07:40 +00:00
Job Noorman
22c3bbcbd7 ir3/legalize: merge predication quirk nops with existing nops
Now that we emit these nops at the beginning of block, we can merge them
with any existing nops.

Totals from 7747 (4.71% of 164575) affected shaders:
Instrs: 10458516 -> 10439473 (-0.18%)
CodeSize: 19276236 -> 19255126 (-0.11%)
NOPs: 2379189 -> 2360146 (-0.80%)
(ss)-stall: 932629 -> 932685 (+0.01%)
(sy)-stall: 3634623 -> 3635354 (+0.02%)
Cat0: 2610461 -> 2591418 (-0.73%)

Signed-off-by: Job Noorman <jnoorman@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35934>
2025-07-07 10:36:50 +00:00
Job Noorman
39ff20b757 ir3/legalize: emit predication quirk nops in next block
Emitting in the same block as the pred[tfe] caused helper_sched to
sometimes insert unnecessary (eq). For example:

block i:
...
prede
(eq)(rpt6)nop
block i+1:
(eq)nop

Emitting the quirk nops in the next block (i+1 in this case) prevents
this.

Note that the small number of shaders where NOPs regress, are cases
where an extra (eq)nop is inserted in a block that doesn't contain any
other nops (but did contain the quirk nop before this change).

Totals from 3814 (2.32% of 164575) affected shaders:
Instrs: 6732543 -> 6732252 (-0.00%); split: -0.01%, +0.00%
CodeSize: 11978286 -> 11978086 (-0.00%); split: -0.00%, +0.00%
NOPs: 1683239 -> 1682948 (-0.02%); split: -0.02%, +0.01%
(ss)-stall: 635237 -> 634077 (-0.18%)
(sy)-stall: 2562027 -> 2533761 (-1.10%); split: -1.10%, +0.00%
Cat0: 1849898 -> 1849607 (-0.02%); split: -0.02%, +0.01%

Signed-off-by: Job Noorman <jnoorman@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35934>
2025-07-07 10:36:50 +00:00
Wolf480pl
62b3fd0a5e radv/virtio: don't leak drm FD when using vpipe
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
The fd in radv_physical_device_try_create is one we opened in that function.
We don't need it when vpipe is in use, so we should close it,
before setting it to -1.

Fixes: 999d5098b4 ("radv/virtio: support vpipe")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35947>
2025-07-07 09:51:15 +00:00
Eric Engestrom
a1466b762d docs/perfetto: update link to documentation
They moved things around, but the content is the same as before.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35962>
2025-07-07 10:12:16 +02:00
Valentine Burley
72e76689a3 turnip/ci: Reduce parallelism of a660-vk
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Some `sm8350-hdk` DUTs are currently failing LAVA health checks in the
Collabora farm, reducing available capacity. To mitigate job delays,
temporarily reduce the parallelism of the `a660-vk` job.

Thanks to previous optimizations and further increasing the
tests_per_group setting, there is no loss in test coverage.

Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35939>
2025-07-07 06:06:25 +00:00
Valentine Burley
1d5d6e3560 turnip/ci: Skip slow tests in a660-vk
These tests have been intermittently timing out even before the changes
in this MR (see e.g. https://gitlab.freedesktop.org/mesa/mesa/-/jobs/79736836),
so skip them in the pre-merge job by adding them to the slow-skips list.

They will still run in the full nightly job.

Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35939>
2025-07-07 06:06:25 +00:00
Valentine Burley
43a70fc385 freedreno/ci: Increase the concurrency of sm8350-hdk
The sm8350-hdk has 8 threads and 12 GB of RAM, which allows increasing
`FDO_CI_CONCURRENT` to 9 to speed up all its jobs.

Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35939>
2025-07-07 06:06:25 +00:00
Dmitry Osipenko
d561be1c27 venus: Fix vn_CreateImage crashing with debug build of venus
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Fix Venus crashing when running in KMS mode and using debug build of Mesa
due to previous patch missing to adjust the assert-check, making it prepared
to handle WSI/scanout images.

Fixes: 31a8218f5b78 ("venus: wsi workaround for gamescope")
Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org>
Signed-off-by: Dmitry Osipenko <dmitry.osipenko@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35958>
2025-07-07 01:45:50 +03:00
Alyssa Rosenzweig
d31cb824df treewide: use VARYING_BIT_*
Some checks failed
macOS-CI / macOS-CI (dri) (push) Has been cancelled
macOS-CI / macOS-CI (xlib) (push) Has been cancelled
Via Coccinelle patch generated by the following Python:

  varys = [ "POS", "COL0", "COL1", "FOGC", "TEX0", "TEX1", "TEX2", "TEX3", "TEX4",
           "TEX5", "TEX6", "TEX7", "PSIZ", "BFC0", "BFC1", "EDGE", "CLIP_VERTEX",
           "CLIP_DIST0", "CLIP_DIST1", "CULL_DIST0", "CULL_DIST1", "PRIMITIVE_ID",
           "PRIMITIVE_COUNT", "LAYER", "VIEWPORT", "FACE",
           "PRIMITIVE_SHADING_RATE", "PNTC", "TESS_LEVEL_OUTER",
           "TESS_LEVEL_INNER", "PRIMITIVE_INDICES", "BOUNDING_BOX0",
           "BOUNDING_BOX1", "VIEWPORT_MASK", "CULL_PRIMITIVE" ]
  t = """
  @@
  @@

  -(1 << VARYING_SLOT_${V})
  +VARYING_BIT_${V}

  @@
  @@

  -BITFIELD_BIT(VARYING_SLOT_${V})
  +VARYING_BIT_${V}

  @@
  @@

  -(1ull << VARYING_SLOT_${V})
  +VARYING_BIT_${V}

  @@
  @@

  -BITFIELD64_BIT(VARYING_SLOT_${V})
  +VARYING_BIT_${V}

  """
  for v in varys:
      from mako.template import Template
      print(Template(t).render(V = v))

Closes: #13453
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Reviewed-by: Marek Olšák <maraeo@gmail.com>
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com> [panfrost, common]
Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com> [broadcom]
Reviewed-by: Corentin Noël <corentin.noel@collabora.com> [virgl]
Acked-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com> [zink]
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35917>
2025-07-04 19:01:04 +00:00
Mike Blumenkrantz
956d3f1562 mesa/st: handle renderbuffer with null zsbuf
this matches cbuf handling

Fixes: 2eb45daa9c ("gallium: de-pointerize pipe_surface")

Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35941>
2025-07-04 17:36:40 +00:00
Mike Blumenkrantz
3925e53efe zink: fix submit_count disambiguation for bo usage checks
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
also improve docs for submit_count to avoid similar errors

Fixes: 61b0955308 ("zink: always check submit_count to disambiguate when checking/waiting")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35940>
2025-07-04 17:19:44 +00:00
Mike Blumenkrantz
69b5abee14 zink: fix acquire semaphore sync
the semaphore stage is VK_PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BIT,
so the src access barrier must also use this in order to ensure it happens
after the acquire

cc: mesa-stable

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35940>
2025-07-04 17:19:44 +00:00
Mike Blumenkrantz
85e4a19ed1 zink: stop deleting src stage in image sync
this probably doesn't help much and makes debugging harder

cc: mesa-stable

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35940>
2025-07-04 17:19:44 +00:00
Pierre-Eric Pelloux-Prayer
c6086f3a54 frontends/va: fix potential overflows
The multiplication of 32 bits integers will be truncated before
being widened to the destination variable' size.
Reported by static analysis.

Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35877>
2025-07-04 15:26:39 +00:00
Pierre-Eric Pelloux-Prayer
f7890c0df9 mesa: fix total_invocations computation
The multiplication of 32 bits integers will be truncated before
being widened to the destination variable' size.
Reported by static analysis.

Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35877>
2025-07-04 15:26:39 +00:00