Commit graph

214263 commits

Author SHA1 Message Date
Samuel Pitoiset
e982f6e2c8 radv: fix shaders memleak when importing pipeline binaries with GPL
The implementation must use the data in VkPipelineBinaryInfoKHR when
provided instead of importing binaries from libraries.

This fixes a memleak with shaders found with ASAN.

Cc: mesa-stable
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37844>
2025-10-14 06:54:02 +00:00
Samuel Pitoiset
876e6a3bfe radv/rt: fix memory leak in lower_rt_instructions_monolithic()
Found with ASAN.

Cc: mesa-stable
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37844>
2025-10-14 06:54:02 +00:00
Samuel Pitoiset
ddef2c1559 vulkan/runtime: fix memleak when creating ETC pipelines
NIR must be freed.

Found with ASAN.

Cc: mesa-stable
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37844>
2025-10-14 06:54:02 +00:00
Georg Lehmann
e26a8be7af ac/nir: enable nir atomic load/store opts
Foz-DB GFX1201:
Totals from 4 (0.00% of 80287) affected shaders:
Instrs: 2928 -> 2920 (-0.27%); split: -0.31%, +0.03%
CodeSize: 15424 -> 15392 (-0.21%); split: -0.23%, +0.03%
Latency: 835578 -> 823220 (-1.48%)
InvThroughput: 3307941 -> 3258515 (-1.49%)
Copies: 459 -> 447 (-2.61%)
VALU: 1297 -> 1291 (-0.46%)
SALU: 595 -> 589 (-1.01%)

Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37822>
2025-10-14 06:24:17 +00:00
Georg Lehmann
92d670021a nir/opt_intrinsics: optimize atomics to atomic load/store
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37822>
2025-10-14 06:24:17 +00:00
Georg Lehmann
e98b218ddd nir/opt_intrinsics: don't pass nir options around
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37822>
2025-10-14 06:24:17 +00:00
Georg Lehmann
142079759b nir/opt_uniform_atomics: optimize xchg with uniform address and data
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37822>
2025-10-14 06:24:16 +00:00
Aitor Camacho
39a7d65113 wsi/metal: Backend addition for drivers built on top of Metal
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Reviewed-By: Aleksi Sapon <aleksi.sapon@autodesk.com>
Reviewed-By: Yiwei Zhang <zzyiwei@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37493>
2025-10-13 20:17:17 +00:00
Aitor Camacho
33695f9c48 wsi/metal: Fix size query and present result
Reviewed-By: Aleksi Sapon <aleksi.sapon@autodesk.com>
Acked-By: Yiwei Zhang <zzyiwei@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37493>
2025-10-13 20:17:17 +00:00
Aitor Camacho
a1c8b21774 wsi/metal: Disable reference counting
Reviewed-By: Aleksi Sapon <aleksi.sapon@autodesk.com>
Acked-By: Yiwei Zhang <zzyiwei@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37493>
2025-10-13 20:17:16 +00:00
Aitor Camacho
507d9af1b9 wsi/metal: Fix wsi_metal_surface_get_formats2
Fixes: fd045ac99c ("wsi/metal: add support for color spaces")

Reviewed-By: Aleksi Sapon <aleksi.sapon@autodesk.com>
Reviewed-By: Yiwei Zhang <zzyiwei@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37493>
2025-10-13 20:17:15 +00:00
Aitor Camacho
b60ef039ce wsi/metal: Cleanup unused members in wsi_metal_swapchain
Reviewed-By: Aleksi Sapon <aleksi.sapon@autodesk.com>
Reviewed-By: Yiwei Zhang <zzyiwei@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37493>
2025-10-13 20:17:14 +00:00
Marek Vasut
bbd6c186a4 pvr: fix device info for GX6250 (4.45.2.58)
Synchronize GX6250 (4.45.2.58) device info with GX6250 (4.40.2.51) device info
and fill in the missing entries into GX6250 (4.45.2.58) device info . This is
important due to missing has_unified_store_depth , which leads to mesa warning:

```
MESA: warning: Missing unified_store_depth feature (defaulting to: 0U)
```

Fixes: 4a245d9f57 ("pvr: add device info for GX6250 (4.45.2.58)")
Reviewed-by: Simon Perretta <simon.perretta@imgtec.com>
Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37850>
2025-10-13 20:03:40 +00:00
Marek Vasut
fb8f0794ea pvr: fix features pointer on GX6650 (4.46.6.62)
The GX6650 (4.46.6.62) has to point to the matching
pvr_device_features_4_V_6_62 , update the pointer
accordingly.

Fixes: 5914d1146f ("pvr: add device info for GX6650 (4.46.6.62)")
Reviewed-by: Simon Perretta <simon.perretta@imgtec.com>
Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37851>
2025-10-13 19:48:05 +00:00
Collabora's Gfx CI Team
503d419138 Uprev Piglit to 4147e9d7aeb8ba26ffc25a90fc237588bcb3bb11
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
a70c33045c...4147e9d7ae

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37845>
2025-10-13 19:20:08 +00:00
Collabora's Gfx CI Team
4870b3db6e Uprev ANGLE to 8ed16003f27125f27cbb87578368e447043420d3
538129c6b3...8ed16003f2

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37845>
2025-10-13 19:20:08 +00:00
Sagar Ghuge
77d2197c18 Revert "intel: Always set Cube Face Enables for all surfaces."
This reverts commit bf15dc7a1b.

All credit goes to Lionel, he spotted this difference. How much effort
went in for this god knows.

Closes: #12348 #12816 #12446 #12387 #12827 Related #12847 #12520
Cc: mesa-stable
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37498>
2025-10-13 11:54:11 -07:00
Lucas Stach
dce859a183 etnaviv: fix YUV tiler blits
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
The YUV tiling blits are an internal copy into a shadow of the resource.
Thus they don't go through the external context blit hook anymore. Call
the YUV blit function from the two code paths that handle internal copies.

Fixes: d4780f03fc ("etnaviv: use direct BLT/RS blit hook for internal copies")
Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
Reviewed-by: Christian Gmeiner <cgmeiner@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37605>
2025-10-13 14:32:33 +00:00
Juan A. Suarez Romero
51b67a144d v3d/v3dv/ci: switch to asan rpi5
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
ASan jobs doesn't work with the rpi4 kernel + Debian Trixie.

So instead we switch these jobs to be executed in rpi5.

Signed-off-by: Juan A. Suarez Romero <jasuarez@igalia.com>
Reviewed-by: Jose Maria Casanova Crespo <jmcasanova@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37814>
2025-10-13 12:24:52 +00:00
Juan A. Suarez Romero
7a33e6801c vc4/ci: disable asan job
Doesn't work with Debian Trixie.

Signed-off-by: Juan A. Suarez Romero <jasuarez@igalia.com>
Reviewed-by: Jose Maria Casanova Crespo <jmcasanova@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37814>
2025-10-13 12:24:52 +00:00
Hyunjun Ko
ecfbcd3d7d anv/ci: added video tests failures on tgl/jsl
Since we don't support filmGrainSupport on previous of gen20 for AV1
decoding by default, failures start happening due to the video tests
assuming always FG supported, which is a fault of CTS.

Signed-off-by: Hyunjun Ko <zzoon@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37762>
2025-10-13 12:06:24 +00:00
Hyunjun Ko
cf04badfb4 anv/video: remove support for VK_IMAGE_TILING_DRM_FORMAT_MODIFIER_EXT
Since we always return (DPB | DST) for video image usages, (See the
discussion at https://gitlab.khronos.org/vulkan/vulkan/-/issues/4461)
we can't support VK_IMAGE_TILING_DRM_FORMAT_MODIFIER_EXT, which was
disabled for DST usages.

Signed-off-by: Hyunjun Ko <zzoon@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37762>
2025-10-13 12:06:24 +00:00
Hyunjun Ko
29aacd7904 anv/video: Make the query result for video profiles and formats more
precisely.

This way we could provide more correct infomation to applications.

Signed-off-by: Hyunjun Ko <zzoon@igalia.com>
Acked-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37762>
2025-10-13 12:06:24 +00:00
Jeffrey Zhuang
8473d8c2dd zink: remove ALWAYS_INLINE from zink_batch_usage_unflushed_wait
Fixes linker error where zink_batch_usage_unflushed_wait was not being
found during compilation. The function was marked as ALWAYS_INLINE but
was being referenced from zink_bo.c, causing unresolved external symbol
errors.

Resolves compilation error in Windows builds.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37835>
2025-10-13 11:35:28 +00:00
Christian Gmeiner
1f60a0397b etnaviv: blt: Support 128 bit blit operations
Signed-off-by: Christian Gmeiner <cgmeiner@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37597>
2025-10-13 11:19:49 +00:00
Christian Gmeiner
59e35590d3 etnaviv: blt: Support 128 bit clear operations
Passes dEQP-GLES3.functional.fbo.color.clear.*32*.

Signed-off-by: Christian Gmeiner <cgmeiner@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37597>
2025-10-13 11:19:49 +00:00
Christian Gmeiner
9dd9ebe9c5 etnaviv: Implement 128-bit format emulation using dual 64-bit layout
The Vivante GPUs don't natively support 128-bit formats like
R32G32B32A32_FLOAT. This patch implements emulation by calculating
the memory layout as if these were 64-bit formats, but doubling the
allocation size to store both halves of the 128-bit data.

For 128-bit formats, we:
- Calculate stride and layer_stride using the 64-bit equivalent format
- Double the mip level size to accommodate both 64-bit halves
- Use translate_format_128bit_to_64bit() to map formats like
  R32G32B32A32_FLOAT -> R32G32_FLOAT

This creates a memory layout where each mip level contains the 128-bit
data organized as two consecutive 64-bit portions.

Signed-off-by: Christian Gmeiner <cgmeiner@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37597>
2025-10-13 11:19:48 +00:00
Christian Gmeiner
7483723966 etnaviv: Do not use TS for emulated 128 bit formats
Signed-off-by: Christian Gmeiner <cgmeiner@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37597>
2025-10-13 11:19:48 +00:00
Christian Gmeiner
2373ef793b etnaviv: 128 bit format needs to be CPU tiled
Signed-off-by: Christian Gmeiner <cgmeiner@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37597>
2025-10-13 11:19:48 +00:00
Christian Gmeiner
f4689fd467 etnaviv: Support 128 bit formats transfers
Signed-off-by: Christian Gmeiner <cgmeiner@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37597>
2025-10-13 11:19:48 +00:00
Christian Gmeiner
511a743587 etnaviv: Add 128-bit format tilling
Signed-off-by: Christian Gmeiner <cgmeiner@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37597>
2025-10-13 11:19:48 +00:00
Christian Gmeiner
244cae1a32 etnaviv: Add 128 bit format helper
TODO: maybe use more util_format helpers, to get rid of hardcoded list.

Signed-off-by: Christian Gmeiner <cgmeiner@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37597>
2025-10-13 11:19:48 +00:00
Christian Gmeiner
5325800053 etnaviv: Add 128bit emulated formats
Signed-off-by: Christian Gmeiner <cgmeiner@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37597>
2025-10-13 11:19:47 +00:00
Christian Gmeiner
045a5fcd5d etnaviv: Allow 128-bit formats when DEQP debug flag is enabled
The driver currently rejects texture and render formats with block sizes
greater than 64 bits due to missing split sampler/target support. This
change conditionally allows these formats when the ETNA_DBG_DEQP debug
flag is enabled, enabling broader format testing in dEQP test suites
while maintaining the restriction for normal driver operation.

This helps improve dEQP test coverage without exposing potentially
unstable functionality to end users.

Signed-off-by: Christian Gmeiner <cgmeiner@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37597>
2025-10-13 11:19:47 +00:00
Georg Lehmann
6eac72088c aco/gfx10+: only work around split execution of uniform LDS in WGP mode
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
LDS instructions from one CU won't split the execution of other LDS instruction
on the same CU.

Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31630>
2025-10-13 10:22:22 +00:00
Georg Lehmann
e08911dff4 nir: fix nir_get_io_offset_src for global_atomic_swap_amd
Fixes: 354df09c88 ("nir: add global_amd to nir_get_io_offset_src/nir_get_io_index_src")

Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37821>
2025-10-13 09:41:41 +00:00
Georg Lehmann
c13caa5e5f aco: fix global_atomic_swap offset overflow check
Fixes: d7dcd81c77 ("aco/gfx6: allow both constant and gpr offset for global with sgpr address")

Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37821>
2025-10-13 09:41:41 +00:00
Erico Nunes
451a0bd490 v3dv: use v3d primary node for VK_EXT_physical_device_drm
Follow the implementation of all other Mesa drivers and use the
primary node of the render device for VK_EXT_physical_device_drm.
The topic of which node should be returned here has been the topic
of a long debate, but at least for Mesa drivers, there is the
consensus that this extension should not mix nodes from different
DRM devices. So align v3dv with the other Mesa implementations.

Signed-off-by: Erico Nunes <nunes.erico@gmail.com>
Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37584>
2025-10-13 09:10:16 +00:00
Erico Nunes
32e4dd6978 v3dv: rename primary_fd to display_fd
In this current implementation, primary_fd refers to the display
device, which can be confused with the primary node of the render
device. In a followup we would like to use primary_fd as the primary
node from v3d, prepare for that by renaming it here.

Signed-off-by: Erico Nunes <nunes.erico@gmail.com>
Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37584>
2025-10-13 09:10:16 +00:00
David Rosca
415a09515c radeonsi/vcn: Use VP9 use_prev_frame_mvs and segmentation_update_data
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Reviewed-by: Ruijing Dong <ruijing.dong@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37808>
2025-10-13 08:11:55 +00:00
David Rosca
add5074460 frontends/va: Add VP9 use_prev_frame_mvs and segmentation_update_data flags
Reviewed-by: Ruijing Dong <ruijing.dong@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37808>
2025-10-13 08:11:55 +00:00
David Rosca
6531f060dd frontends/va: Fix parsing VP9 frame header
Fix parsing intra only frames with profile 0. Change type to
signed int and initialize default values for ref_deltas and
mode_deltas.

Cc: mesa-stable
Reviewed-by: Ruijing Dong <ruijing.dong@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37808>
2025-10-13 08:11:55 +00:00
Daivik Bhatia
fc2ee4d407 broadcom/compiler: support arithmetic subgroup operations
This adds support for subgroup reduce operations
and subgroup scan operations. We rely on nir lowering
to lower these.

Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37836>
2025-10-13 08:25:25 +02:00
Daivik Bhatia
cdef2c0b61 broadcom/common: Add subgroup support to CSD super-group packing
Certain subgroup operations don’t impose constraints on
CSD supergroup packing. Mark these as supported
and account for them in v3d_csd_choose_workgroups_per_supergroup()
so packing remains unchanged when they are present.

Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37836>
2025-10-13 08:25:24 +02:00
Daivik Bhatia
1326d52d23 broadcom/common: Optimize CSD super-group packing
Return one work group per super group when the work group size
is multiple of 16 (elements per batch) and recalculate max_wgs_per_sg
only when TSY barriers cut the available QPU threads.

Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37836>
2025-10-13 08:25:24 +02:00
Yiwei Zhang
099ac5be1a panvk: log device and driver info for startup
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Acked-by: Boris Brezillon <boris.brezillon@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37825>
2025-10-12 19:13:52 +00:00
Yiwei Zhang
8892f398e7 panvk: use mesa_logi for startup info logs
For startup info logs behind the debug option, logging the file path and
line of code is not quite useful. So use mesa_logi for simplicity.

Acked-by: Boris Brezillon <boris.brezillon@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37825>
2025-10-12 19:13:52 +00:00
Eric Engestrom
a9b161fd3f broadcom/ci: document fixed tests
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37832>
2025-10-12 17:40:09 +00:00
Eric Engestrom
8ee9f54177 nvk/ci: document fixed tests
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37832>
2025-10-12 17:40:09 +00:00
Eric Engestrom
4710ec1867 nvk/ci: document some flakes
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37832>
2025-10-12 17:40:09 +00:00