Commit graph

221284 commits

Author SHA1 Message Date
Qiang Yu
7b31943824 ac,radeonsi,radv: fix print IB assertion fail for reserved fields
New IB print will assert reserved packet field to be zero.

Fixes: 1c75cd958f ("ac: enable the new auto-generated CP packet parser")
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
(cherry picked from commit 89c1bf34ed)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41268>
2026-04-29 17:53:10 +02:00
GKraats
99e944d0d6 crocus: Fix shader precompilation on Gen6 and higher
By default crocus precompiles shaders, to avoid stuttering at screens,
caused by compiling shaders at the drawing phase.
Unfortunately at intel Gen 6 and higher the precompiled version of the
fragment shaders is not used and every fragment shader is compiled twice.
These double fragment shaders also are added to the memory cache
and disk cache.
This is caused by setting wrong values to variables at the key during
precompiling at routine crocus_create_fs_state() at src/gallium/drivers/crocus/crocus_program.c,
which differ from values at crocus_populate_fs_key() at src/gallium/drivers/crocus/crocus_state.c.

This commit solves 3 problems:

it adjusts the predicted value 'input_slots_valid' at Gen 6
it adjusts the predicted value 'ignore_sample_mask_out' at Gen 6 and higher
it predicts the value 'multisample_fbo' , which helps if samplemask is used

Cc: mesa-stable
Signed-off-by: GKraats <vd.kraats@hccnet.nl>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
(cherry picked from commit 686266d2f1)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41268>
2026-04-29 17:53:10 +02:00
Lars-Ivar Hesselberg Simonsen
4a330b6913 panvk: Fix debug flag overlap
PANVK_DEBUG_HSR_PREPASS and PANVK_DEBUG_NO_EXTENDED_VA_RANGE have the
same value, meaning they both get toggled when one is.

This commit moves PANVK_DEBUG_HSR_PREPASS to the following value.

Fixes: 2d9be41706 ("panvk/v13: Support HSR Prepass")
Reviewed-by: John Anthony <john.anthony@arm.com>
(cherry picked from commit 82592433e6)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41268>
2026-04-29 17:53:10 +02:00
David Rosca
b9e1ed0269 radv/video: Fix initializing rc structs with default rate control
Fixes: 32a02720a8 ("radv/video: Init session and update rate control in ControlVideoCoding")
Reviewed-by: Benjamin Cheng <benjamin.cheng@amd.com>
(cherry picked from commit 3d0239cff9)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41268>
2026-04-29 17:53:10 +02:00
Tapani Pälli
02c2fe836a drirc: use anv_disable_drm_ccs_modifiers for any GTK version
Cc: mesa-stable
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/work_items/15297
Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
(cherry picked from commit a76e3c2616)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41268>
2026-04-29 17:53:10 +02:00
Valentine Burley
c95cabc017 zink/ci: Remove Cezanne job
The devices will be repurposed for a different job.

Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
(cherry picked from commit 4e4207e639)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41268>
2026-04-29 17:53:10 +02:00
Tapani Pälli
2c9c379888 drirc: set anv_disable_subgroup_size_control for bg3
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/work_items/15225
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/work_items/14501
Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
(cherry picked from commit 4394e26f52)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41268>
2026-04-29 17:53:10 +02:00
Tapani Pälli
e65c1667e7 drirc/anv: add flag to disable VK_EXT_subgroup_size_control
This can be used to workaround problem cases with application
controlled subgroup size.

Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
(cherry picked from commit c105366165)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41268>
2026-04-29 17:53:10 +02:00
Eric Engestrom
b32eb09817 .pick_status.json: Update to d4d7055aee
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41268>
2026-04-29 17:53:10 +02:00
Eric Engestrom
9445e5d0a6 VERSION: bump for 26.1.0-rc2
Some checks failed
macOS-CI / macOS-CI (dri) (push) Has been cancelled
macOS-CI / macOS-CI (xlib) (push) Has been cancelled
2026-04-22 18:42:56 +02:00
Samuel Pitoiset
7e9886def2 radv: fix GPU hangs with PS epilogs and secondaries properly
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
The previous fix was incomplete because if the same graphics pipeline
and the same PS epilog are rebind after vkCmdExecuteCommands(), the PS
epilog state wouldn't be re-emitted, and it will use a wrong VA (in case
both fragment shader user SGPRs aren't similar either).

Resetting the PS epilog to NULL in the primary should prevent any
issues, but this tracking still need to be improved because it caused
two issues recently.

Fixes: 1a00587c44 ("radv: fix a GPU hang with PS epilogs and secondary command buffers")
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/work_items/15176
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
(cherry picked from commit a73fc90bcd)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41104>
2026-04-22 14:34:50 +02:00
Timothy Arceri
58f2b87642 glcpp: fix paste within macro function expansion
Note the tests added in 89cd6df034 were wrong (confirmed in gcc)
I've updated them to the expected outcome and enabled the paste
test from 475222b022.

Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/13863
Fixes: d5cd40343f ("Expand macro arguments before performing argument substitution.")

Reviewed-by: Eric R. Smith <eric.smith@collabora.com>
(cherry picked from commit 5f37490855)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41104>
2026-04-22 14:34:50 +02:00
David Rosca
c61af6270d ac/parse_ib: Fix printing enc recon VAs on VCN5
Fixes: f8f80c3700 ("ac/parse_ib: Fix VCN address parsing")
Reviewed-by: Benjamin Cheng <benjamin.cheng@amd.com>
(cherry picked from commit 27dbe82800)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41104>
2026-04-22 14:34:50 +02:00
Zan Dobersek
188d248654 tu/a8xx: remove enforced TU_DEBUG_FLUSHALL
Remove the TU_DEBUG_FLUSHALL option that was force-enabled for a8xx chips.
The problematic CTS cases that required it were failing due to indirect
draw commands sourcing draw data from buffers whose content was prepared
by compute tasks.

Up until a8xx, firmware was managing an implicit wait before any indirect
draw parameters were read, with a delayed CP_WAIT_FOR_ME emitted only when
necessary or on devices enabling indirect_draw_wfm_quirk due to bugged
firmware. That implicit wait is gone on a8xx, so CP_WAIT_FOR_ME should be
emitted immediately, which also matches behavior of the proprietary driver.

Signed-off-by: Zan Dobersek <zdobersek@igalia.com>
(cherry picked from commit 9931034dca)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41104>
2026-04-22 14:34:50 +02:00
Erik Faye-Lund
e4f7829b21 dri: deprecate post-processing dri-confs
The post-processing infrastructure is showing it's age; it's written
using TGSI, which has been on the way out for a long time. There's also
few actually useful filters in there, and there are better tools out
there to inject shaders into applications.

Let's mark this as deprecated, so we can delete it in the future. Having
a deprecation period makes it easier for any potential users to find
alternatives in a timely matter.

Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Acked-by: Christian Gmeiner <cgmeiner@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41104>
2026-04-22 14:34:50 +02:00
Sagar Ghuge
696e7ac600 anv: Fix Wa_14021821874, Wa_14018813551, Wa_14026600921
StackSizePerRay is the RTDispatchGlobals::AsyncStackSize and
DisableRTGlobalsKnownValues is to interpret how many Max BVH levels we
need to use. It's not relevant to Vulkan, since we have just 2 fixed BVH
levels.

Fixes: cb423ee6 ("anv: Fix Wa_14021821874, Wa_14018813551, Wa_14026600921")
Fixes: c1a44e8d ("anv: force StackIDControl value for Wa_14021821874")
Signed-off-by: Sagar Ghuge <sagar.ghuge@intel.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
(cherry picked from commit 7a627fa8f3)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41104>
2026-04-22 14:34:49 +02:00
Lionel Landwerlin
3430163eeb anv: fixup compute queue detection
I ran into this case where genX(cmd_buffer_emit_bt_pool_base_address)
was returning immediately because it considered an RCS engine
emulating a compute queue as neither a render nor a compute queue.

Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Cc: mesa-stable
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
(cherry picked from commit d581b7282b)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41104>
2026-04-22 14:34:49 +02:00
Lionel Landwerlin
3a02ea4446 anv: fix debug printfs on hang
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Fixes: 0932d0c7e0 ("anv/xe: rework set_lost handling in xe_exec_ioctl()")
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
(cherry picked from commit c0c324fcb2)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41104>
2026-04-22 14:34:49 +02:00
Lionel Landwerlin
2bd884274f anv: fix invalid value for push block index
Probably worked because we could always reach to things through the
binding table and the index was the same.

Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Cc: mesa-stable
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
(cherry picked from commit 3256fab5a3)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41104>
2026-04-22 14:34:49 +02:00
Lionel Landwerlin
6ae2931cef anv: fix compute push constant allocations on pre Gfx12.5 platforms
MEDIA_CURBE_LOAD::CURBETotalDataLength needs to be 64B aligned.

Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Cc: mesa-stable
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
(cherry picked from commit 773fef12cd)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41104>
2026-04-22 14:34:49 +02:00
Lionel Landwerlin
006ee6ea04 anv: avoid C23
For some reason the android builders started noticing...

Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Cc: mesa-stable
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
(cherry picked from commit f6306198d0)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41104>
2026-04-22 14:34:49 +02:00
Erik Faye-Lund
8c7afcf8f3 panvk: do not enable extension without required feature
The Vulkan spec states that if VK_KHR_shader_clock is supported,
shaderSubgroupClock is a required feature. So let's not enable that
extension unless we can...

Fixes: e9c2c32409 ("panvk: enable VK_KHR_shader_clock")
Reviewed-by: Christoph Pillmayer <christoph.pillmayer@arm.com>
Reviewed-by: Ashley Smith <ashley.smith@collabora.com>
Reviewed-by: Daniel Stone <daniels@collabora.com>
(cherry picked from commit c8ae72f51d)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41104>
2026-04-22 14:34:49 +02:00
Erik Faye-Lund
4b5a101e0a panvk: do not enable extension without required feature
The Vulkan spec states that if VK_ARM_shader_core_builtins is supported,
shaderCoreBuiltins is a required feature. So let's not enable that
extension unless we can...

Fixes: dff1d91c64 ("panvk: Enable VK_ARM_shader_core_builtins")
Reviewed-by: Daniel Stone <daniels@collabora.com>
(cherry picked from commit 8cb89853b8)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41104>
2026-04-22 14:34:49 +02:00
Erik Faye-Lund
bf1c7cd431 radeonsi: remove old, unsupported cap
This hasn't been supported for a long time.

Fixes: 420fe1e7f9 ("radeonsi: remove TGSI")
Reviewed-by: Marek Olšák <maraeo@gmail.com>
(cherry picked from commit 261cb0e9bf)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41104>
2026-04-22 14:34:49 +02:00
Erik Faye-Lund
86593a512e nouveau: do not report unsupported feature
This hasn't been supported since the TGSI envvar was ripped out. When
converted to NIR, we don't see these instructions at all.

Fixes: c3cbe610df ("nouveau: Delete the NV50_PROG_USE_TGSI env var.")
Reviewed-by: Marek Olšák <maraeo@gmail.com>
(cherry picked from commit b062062430)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41104>
2026-04-22 14:34:49 +02:00
Erik Faye-Lund
9e6b384be4 pan/lib: emit high bits of buffer-size
We can't expose large texel-buffers if we don't emit the high bits.
Whoopsie!

Fixes: 4db7958edc ("pan/bi: Change texel buffer limits")
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
(cherry picked from commit 57a80ff78c)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41104>
2026-04-22 14:34:49 +02:00
Erik Faye-Lund
fcf6c68fac pan/lib: fix up afbc and linear layout
A few cases of UINT32_MAX were missed, whoops.

Fixes: c2c91e78fd ("pan/layout: Allow bigger size/surface stride on v12+")
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
(cherry picked from commit 69b8372fbf)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41104>
2026-04-22 14:34:49 +02:00
Patrick Lerda
d1fb12d821 r600: fix atomic_counter_post_dec
This change was tested on plam and cayman. Here are the tests fixed:
spec/arb_gl_spirv/execution/uniform/atomic-uint-aoa-cs: fail pass
spec/arb_gl_spirv/execution/uniform/atomic-uint-aoa-fs: fail pass
spec/arb_gl_spirv/execution/uniform/atomic-uint-array-cs: fail pass
spec/arb_gl_spirv/execution/uniform/atomic-uint-array-fs: fail pass
spec/arb_gl_spirv/execution/uniform/atomic-uint-cs: fail pass
spec/arb_gl_spirv/execution/uniform/atomic-uint-fs: fail pass

Cc: mesa-stable
Signed-off-by: Patrick Lerda <patrick9876@free.fr>
(cherry picked from commit 0deac18581)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41104>
2026-04-22 14:34:49 +02:00
Patrick Lerda
6f2b78280e r600: update vertex emit_varying_pos
This change adds a minimal support for gl_PointSize to
be used alongside gl_ClipDistance/gl_CullDistance.

This change was tested on palm and cayman. Here is the test fixed:
khr-gl4[5-6]/gl_spirv/spirv_validation_builtin_variable_decorations_test: fail pass

Cc: mesa-stable
Signed-off-by: Patrick Lerda <patrick9876@free.fr>
(cherry picked from commit 032a2bdc1e)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41104>
2026-04-22 14:34:49 +02:00
Patrick Lerda
d974ef12d4 r600: fix atomic buffer offset
The atomic offset implementation was incomplete.

This change was tested on cayman, it fixes all the
variants of this test:
khr-gl4[2-6]/shader_atomic_counters/advanced-usage-multi-stage: fail pass
khr-gles31/core/shader_atomic_counters/advanced-usage-multi-stage: fail pass

Fixes: 06993e4ee3 ("r600: add support for hw atomic counters. (v3)")
Signed-off-by: Patrick Lerda <patrick9876@free.fr>
(cherry picked from commit 48902771ad)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41104>
2026-04-22 14:34:49 +02:00
Patrick Lerda
4c941da3f1 r600: fix alpha-to-coverage and alpha-to-one used together
This change is inspired by b56f47611a ("radeonsi: fix
alpha-to-coverage + alpha-to-one used together for
gfx6-10.3") and implements the same algorithm.

This change was tested on rv770, palm and cayman. Here are the tests fixed:
spec/arb_framebuffer_object/execution/msaa-alpha-to-coverage_alpha-to-one: fail pass
spec/arb_framebuffer_object/execution/msaa-alpha-to-coverage_alpha-to-one_write-z: fail pass

Cc: mesa-stable
Signed-off-by: Patrick Lerda <patrick9876@free.fr>
(cherry picked from commit 7513f48edf)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41104>
2026-04-22 14:34:49 +02:00
Icenowy Zheng
771d342a1d pvr: follow other drivers' practice for copying build ID
Previously the output length of pvr_get_driver_build_sha() is changed to
BUILD_ID_EXPECTED_HASH_LENGTH, but the array defined to receive its
output, the driver_build_sha array inside struct pvr_instance, is
declared with BLAKE3_KEY_LEN, which is longer than
BUILD_ID_EXPECTED_HASH_LENGTH.

This leads to uninitialized memory being accessed when creating
pipelineCacheUUID value, and the pipelineCacheUUID value would become
random in each run, defecting the purpose of it.

Refactor the code copying the build ID to follow other drivers: changing
the parameter from the buffer to the instance pointer, inserting a
static assert thanks to being able to retrieve the destination buffer
length (as an array inside the instance structure) and using
copy_build_id_to_sha1() to do the final copy.

Fixes: 6a42493c94 ("pvr: Use BUILD_ID_EXPECTED_HASH_LENGTH")
Signed-off-by: Icenowy Zheng <zhengxingda@iscas.ac.cn>
Reviewed-by: Ella Stanforth <ella@igalia.com>
(cherry picked from commit 9870c8d8c4)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41104>
2026-04-22 14:34:49 +02:00
David Rosca
0beccdd92c d3d12: Use HEVC RefPicSet order from frontend
It is correctly sorted in frontend since 779edc0759 ("frontends/va: Correctly derive HEVC StCurrBefore, StCurrAfter and LtCurr")

This fixes RefPicSetLtCurr order which was incorrectly sorted here.

Cc: mesa-stable
(cherry picked from commit 7a8721e95c)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41104>
2026-04-22 14:34:49 +02:00
Tapani Pälli
be33c1c0dc intel/compiler: implement macl part of Wa_18035690555
Fixes: 3ab9145393 ("intel/compiler: implement dummy mov for Wa_18035690555")
Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
(cherry picked from commit 8736d1a9a6)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41104>
2026-04-22 14:34:49 +02:00
Janne Grunau
e2b2d511cf nir/gather_info: clear interpolation qualifiers only in fragment stage
Asahi wants the the interpolation qualifiers from the shader info in the
vertex shader. Clear them only in the fragment stage so they can
propagate back.

Closes: https://gitlab.freedesktop.org/mesa/mesa/-/work_items/15288
Backport-to: 26.0
Fixes: a72704d0fb ("nir/gather_info: clear interpolation qualifiers before gathering")
Signed-off-by: Janne Grunau <j@jannau.net>
(cherry picked from commit 98a97cb413)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41104>
2026-04-22 14:34:49 +02:00
Karol Herbst
7241b3e010 mesa/st: do not advertise CL subgroup features on the GL side
Fixes: 2a5227981e ("gallium: add SUBGROUP_FEATURE bits for rotate and rotate_clustered")

Reviewed-by: Marek Olšák <maraeo@gmail.com>
(cherry picked from commit 9fb54a2092)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41104>
2026-04-22 14:34:49 +02:00
Matt Turner
641f319a83 intel/elk: Remove dead TXL_LZ/TXF_LZ opcodes
These opcodes were only emitted for Gen9+ hardware, but elk only targets
Gen8 and below.

Fixes: 05d78994a7 ("intel/elk: Remove Gfx9+ sampler messages and modes")
(cherry picked from commit d36a578bc0)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41104>
2026-04-22 14:34:49 +02:00
Ryan Zhang
b0d10585e8 panvk: add VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL to host copy layouts
Add the missing layout which do not need implemented anything in
mali gpu.

Fixed: dEQP-VK.image.host_image_copy.properties.properties
unifiedImageLayouts feature is supported, but layout
VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL was not included in
VkPhysicalDeviceHostImageCopyProperties::pCopySrcLayouts.

Fixes: 1cd61ee ("panvk: implement VK_EXT_host_image_copy for linear color images")

Signed-off-by: Ryan Zhang <ryan.zhang@nxp.com>
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
(cherry picked from commit 62e7120384)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41104>
2026-04-22 14:34:49 +02:00
Mauro Rossi
a0521762f4 radv: Fix gnu-empty-initializer errors in 8c10eab1
Fixes the following building errors:

../src/amd/vulkan/radv_rra.c:1369:43: error: use of GNU empty initializer extension [-Werror,-Wgnu-empty-initializer]
      struct radv_bvh_stats_gfx12 stats = {};
                                          ^
../src/amd/vulkan/radv_rra.c:1376:45: error: use of GNU empty initializer extension [-Werror,-Wgnu-empty-initializer]
      struct radv_bvh_stats_gfx10_3 stats = {};
                                            ^
2 errors generated.

Fixes: 8c10eab1 ("radv: Add an option for dumping BVH stats")
(cherry picked from commit dfca417db8)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41104>
2026-04-22 14:34:49 +02:00
Mauro Rossi
250aaa9f44 radv: Fix gnu-empty-initializer errors in 480a94fb
Fixes the following building errors:

../src/amd/vulkan/radv_shader.c:3460:42: error: use of GNU empty initializer extension [-Werror,-Wgnu-empty-initializer]
   struct radv_shader_debug_info debug = {};
                                         ^
1 error generated.

../src/amd/vulkan/radv_shader_args.c:975:43: error: use of GNU empty initializer extension [-Werror,-Wgnu-empty-initializer]
   struct user_sgpr_info user_sgpr_info = {};
                                          ^
1 error generated.

Fixes: 480a94fb ("radv: Gather debug info about shader args")
(cherry picked from commit 46d396d9d8)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41104>
2026-04-22 14:34:49 +02:00
Dhruv Mark Collins
b8e9e83bbe tu/query_pool: Avoid CP counter conflict with autotune
With autotune allocating counters low-to-high, the conflict with
PERFORMANCE_QUERY_KHR will happen if any CP-based counters are
used. This is a temporary workaround which just drops the first
two CP counters from being usable for performance queries.

Cc: mesa-stable
Signed-off-by: Dhruv Mark Collins <mark@igalia.com>
Assisted-by: OpenAI Codex (GPT-5.4)
(cherry picked from commit 78e2bbc70f)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41104>
2026-04-22 14:34:49 +02:00
Dhruv Mark Collins
203ae35091 tu/autotune: Allocate performance counters from low-to-high
This is more consistent with the newly established pattern of the
UMD allocating all locally used performance counters low-to-high
instead of the prior high-to-low order.

Cc: mesa-stable
Signed-off-by: Dhruv Mark Collins <mark@igalia.com>
Assisted-by: OpenAI Codex (GPT-5.4)
(cherry picked from commit f78541b765)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41104>
2026-04-22 14:34:48 +02:00
Dhruv Mark Collins
3d6fab0404 fd/pps: Allocate performance counters from high-to-low
The UMD will be switching to allocating counters from low-to-high,
so to avoid the chances of conflict with this new policy the PPS
driver now allocates the other way around. Additionally, this will
future proof it for the MSM-DRM uAPI for performance counters which
will similarly allocate from high-to-low.

Cc: mesa-stable
Signed-off-by: Dhruv Mark Collins <mark@igalia.com>
Assisted-by: OpenAI Codex (GPT-5.4)
(cherry picked from commit 24849eef9f)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41104>
2026-04-22 14:34:48 +02:00
Dhruv Mark Collins
920a848027 tu/autotune: Fail gracefully when CP counters are unavailable
When preemption optimization is supported then the necessary CP
counters being missing causes a device initialization error which
is unnecessary as support can simply be disabled instead to allow
for a more graceful fail. This also fixes A8XX which doesn't have
performance counters hooked up yet.

Cc: mesa-stable
Signed-off-by: Dhruv Mark Collins <mark@igalia.com>
Assisted-by: OpenAI Codex (GPT-5.4)
(cherry picked from commit a5ec9b7892)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41104>
2026-04-22 14:34:48 +02:00
Zan Dobersek
c63da3365d tu: only support userspace-managed perfcounters on a7xx and earlier
Future kernel API for perfcounter management will likely be required for
a8xx and onwards. For a7xx and earlier, cmdstream-based selector and
counter register management is still supported.

Cc: mesa-stable
Signed-off-by: Zan Dobersek <zdobersek@igalia.com>
(cherry picked from commit c2708afbc7)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41104>
2026-04-22 14:34:48 +02:00
Erik Faye-Lund
0d6e04debe panvk: drop out-of-date TODO
We already did this, so let's drop this TODO.

Fixes: d36e6af329 ("panvk: Bump the max image size on v11+")
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
(cherry picked from commit f137207108)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41104>
2026-04-22 14:34:48 +02:00
Michel Dänzer
705dabbc26 winsys/amdgpu: Use render node only as fallback
If ac_drm_device_initialize returns -EACCES for the fd passed in.

A render node file description can't have DRM master status, which means
AMDGPU_CTX_PRIORITY_HIGH can't work without CAP_SYS_NICE (which
generally only the root user has).

Fixes: 8f30e90fc1 ("winsys/amdgpu: Prefer render node FD for ac_drm_device_initialize")
(cherry picked from commit 5cc3264b53)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41104>
2026-04-22 14:34:48 +02:00
Samuel Pitoiset
3740d70fc5 radv: lower SHADER_RECORD_INDEX to non-uniform
This fixes an issue with RADV and NVIDIA-RTX/Donut-Samples with heap
support in vkd3d-proton.

Backport-to: 26.1
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
(cherry picked from commit 477c44ba93)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41104>
2026-04-22 14:34:48 +02:00
Samuel Pitoiset
010072b5bc vulkan: add an option to lower SHADER_RECORD_INDEX to non-uniform
Applications are required to set NonUniform if the resource is arrayed,
but with VK_DESCRIPTOR_MAPPING_SOURCE_HEAP_WITH_SHADER_RECORD_INDEX_EXT,
the resource is non-arrayed in the shader. So, it's technically not
required to set it. Although, the offset can vary per-lane and
NonUniform is implicit.

Backport-to: 26.1
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
(cherry picked from commit 8e2869fa41)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41104>
2026-04-22 14:34:48 +02:00
Connor Abbott
eb7c92b6a2 ir3: Use correct immediate size for constlen calculation
"size" is the allocated size of the array, not the number of immediates
actually used. We could wind up returning a too-large constlen, larger
than 512, and since the binning variant uses the non-binning variant's
constlen as it's max_const we could make binning variants use c512.x and
crash when encoding.

Fixes: 86f3c0c4c2 ("ir3: simplify constlen calculation")
(cherry picked from commit 49d29d4f10)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41104>
2026-04-22 14:34:48 +02:00