Commit graph

204955 commits

Author SHA1 Message Date
Eric Engestrom
f4b86bee56 docs: add sha sum for 25.1.7
Some checks failed
macOS-CI / macOS-CI (dri) (push) Has been cancelled
macOS-CI / macOS-CI (xlib) (push) Has been cancelled
2025-07-30 22:30:22 +02:00
Eric Engestrom
581a4f7e70 VERSION: bump for 25.1.7 2025-07-30 22:15:57 +02:00
Eric Engestrom
983c71d0ae docs: add release notes for 25.1.7 2025-07-30 22:15:57 +02:00
Lionel Landwerlin
4a675e246f brw: fixup coarse_z computation
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
The delivered values in the coarse pixel size are 0 when coarse pixel
dispatch is disabled and that is screwing up our half pixel offset
adjustment.

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/36457>
(cherry picked from commit 9371e8d370)
2025-07-30 11:31:15 +02:00
Lionel Landwerlin
909af54768 brw: fixup source depth enabling with coarse pixel shading
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/36457>
(cherry picked from commit 9dac7dda87)
2025-07-30 11:31:15 +02:00
Lionel Landwerlin
a10f4b9aab brw: fix NIR metadata invalidation with closest-hit shaders
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/36457>
(cherry picked from commit 68c50d129e)
2025-07-30 11:31:15 +02:00
Mike Blumenkrantz
5656e8beb0 kopper: fix initial swapinterval setting
setting the mode here is harmless even on weirdo cts swapchain cases

Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/13568

cc: mesa-stable

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36452>
(cherry picked from commit f68cae3e13)
2025-07-30 11:31:15 +02:00
Iago Toral Quiroga
3bc1756734 frontend/dri: don't call set_damage_region with a null resource
This can happen if texture allocation failed.

Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34668>
(cherry picked from commit 103a16e4fa)
2025-07-30 11:31:15 +02:00
Juston Li
5423643b87 anv/android: refactor anb resolve to fix align assertion
Retrieving memory requirement size and alignment via
anv_image_get_memory_requirements() return's 0 before surfaces are added
by resolve_anb_image() and will assert in align64() when align is 0:

Abort message: '../src/util/u_math.h:713: uint64_t align64(uint64_t, uint64_t): assertion "util_is_power_of_two_nonzero64(alignment)" failed'

Refactor out anv_image_bind_from_gralloc() into resolve_anb_image() so
the checks are performed after the surface is adds.

Resolving also requires API 29 so return VK_ERROR_EXTENSION_NOT_PRESENT
without it.

Fixes: 43cb986d9e ("anv/android: resolve ANB swapchain images on bind")
Signed-off-by: Juston Li <justonli@google.com>
Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org>
Acked-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36060>
(cherry picked from commit e1ca09317e)
2025-07-30 11:31:15 +02:00
Faith Ekstrand
0bea56e932 vulkan/wsi/x11: Handle VK_NOT_READY in AcquireNextImage()
This check assumed that we would always get `VK_TIMEOUT` from
wsi_queue_pull() but the new explicit sync wait is smart enough to do
that for us.  Unfortunately, the X11 code weasn't smart enough to know
that VK_NOT_READY (which is a positive return code) was also an early
exit condition.

Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/12971
Fixes: 899263ecfc ("wsi/x11: support explicit sync")
Acked-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Tested-by: Adam Ivora
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36419>
(cherry picked from commit 064b9e5645)
2025-07-30 11:31:15 +02:00
David Rosca
62e8bc584c radeonsi/vcn: Use more_rbsp_data flag for H264 PPS encode
transform_8x8_mode, pic_scaling_matrix_present_flag and
second_chroma_qp_index_offset may only be present in High profile.

Cc: mesa-stable
Reviewed-by: Boyuan Zhang <Boyuan.Zhang@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36351>
(cherry picked from commit da5f3a1027)
2025-07-30 11:31:14 +02:00
David Rosca
d8a9e7475f frontends/va: Add H264 encode more_rbsp_data PPS flag
Cc: mesa-stable
Reviewed-by: Boyuan Zhang <Boyuan.Zhang@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36351>
(cherry picked from commit 6247c7fdc1)
2025-07-30 11:31:14 +02:00
Christoph Pillmayer
953f716e1f vk/sync: Pass dependencyFlags in vk_common_CmdPipelineBarrier
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>

Fixes: 97f0a449 ("vulkan: implement legacy entrypoints on top of VK_KHR_synchronization2")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36321>
(cherry picked from commit a501d26dee)
2025-07-30 11:31:14 +02:00
Erico Nunes
9a668a59e2 lima: ppir: fix check for discard_block in optimization
uses_discard may be set when the nir shader contains a 'discard'
implemented with a nir 'terminate', in that case it may stil not
necessarily have a discard block.
Fixes a crash in shaders that have comp->uses_discard but no
comp->discard_block.

Fixes: fa9ddbe82b ("lima: ppir: optimize branches")

Signed-off-by: Erico Nunes <nunes.erico@gmail.com>
Reviewed-by: Vasily Khoruzhick <anarsoul@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36350>
(cherry picked from commit d620529ddb)
2025-07-30 11:31:14 +02:00
David Rosca
425c3b86fb radv/video: Use the new defines for H264 SPS info flags
Also set gaps_in_frame_num_value_allowed_flag.

Cc: mesa-stable
Reviewed-by: Ruijing Dong <ruijing.dong@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36225>
(cherry picked from commit cc7178b9eb)
2025-07-30 11:31:14 +02:00
David Rosca
0ee1ef25b5 radv/video: Fix session_init and rc_per_pic on VCN2
Cc: mesa-stable
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36353>
(cherry picked from commit 627fdb368d)
2025-07-30 11:31:14 +02:00
David Rosca
1b5c732526 radv/video: Fix setting H265 encode cu_qp_delta on VCN2
Fixes H265 encoding with rate control disabled.

Cc: mesa-stable
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36353>
(cherry picked from commit c11508ad41)
2025-07-30 11:31:14 +02:00
David Rosca
75055537b3 radv/video: Fix encode bitstream buffer offset and alignment
Caused issues on VCN2.

Cc: mesa-stable
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36353>
(cherry picked from commit 70473690f5)
2025-07-30 11:31:14 +02:00
David Rosca
dc3f6f1c6a radv/video: Send slice control, spec misc and deblocking params every frame
These params can change per frame, so we need to send the values
to firmware on every frame instead of only once at session init.

Cc: mesa-stable
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36353>
(cherry picked from commit e3715df4ee)
2025-07-30 11:31:14 +02:00
Mel Henning
772bc1dc06 nak/mark_lcssa_invariants: Invalidate divergence
Preserving this was resulting in validation errors like:
error: def->loop_invariant == BITSET_TEST(loop_invariance, def->index) (../src/compiler/nir/nir_validate.c:1890)

Fixes: 1d6082bf56 ("nouveau: switch to nir_metadata_divergence")
Reviewed-by: Karol Herbst <kherbst@redhat.com>
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36415>
(cherry picked from commit a1b64fdc12)
2025-07-30 11:31:14 +02:00
Myrrh Periwinkle
001cccae52 gallium: Properly handle non-contiguous used sampler view indexes
There is nothing guaranteeing that the currently used sampler view
indexes will be contiguous, which means the resulting extra sampler
views created by st_get_sampler_views may not be placed at the end of
the resulting array. Therefore, the exact indexes of these views must
be passed to the caller for releasing instead of simply assuming that
they will always be placed at the end.

Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/13363
Fixes: 73da0dcddc ("gallium: eliminate frontend refcounting from samplerviews")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36397>
(cherry picked from commit abcd02a07d)
2025-07-30 11:31:14 +02:00
Erik Faye-Lund
ff86280a22 pan/ci: remove non-existent flag from PAN_MESA_DEBUG
There's been a few years since these flags existed, let's drop them.

Fixes: ea03d0652d ("panfrost: Remove PAN_MESA_DEBUG=deqp")
Fixes: 7c7c38b126 ("panfrost: Remove unused debug parameter")
Acked-by: Valentine Burley <valentine.burley@collabora.com>
Reviewed-by: Eric R. Smith <eric.smith@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36310>
(cherry picked from commit 2adcb4c81a)
2025-07-30 11:31:14 +02:00
Patrick Lerda
c0b48ff0db dri: complete the support for ARGB4444
This change is inspired by 1021d6fe62 ("dri: deal
with ARGB1555")

This issue is now mostly fixed with
https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36081
Anyway, the dri3_cpp_for_fourcc entry is still missing and should
be added.

This change is useful for instance with r600 which
can handle this format.

Note: this mode was generated at the "glx visuals" level
on r600 by default before the commit d709b42180.

This change was tested on r600 palm and cayman with X11
loaded with a version of mesa generating this very mode:
glx/glx-visuals-depth -pixmap: fail pass
glx/glx-visuals-stencil -pixmap: fail pass

Fixes: 00aa095d53 ("dri: Support 1555/4444 formats")
Signed-off-by: Patrick Lerda <patrick9876@free.fr>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34294>
(cherry picked from commit cea80e1a10)
2025-07-30 11:31:14 +02:00
Rhys Perry
9a1b261529 nir/uub: fix 8/16-bit overflow
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com>
Backport-to: 25.1
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/13552
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/13553
Tested-by: @LingMan
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36372>
(cherry picked from commit a9a1da0264)
2025-07-30 11:31:14 +02:00
Danylo Piliaiev
7994eaa8e6 tu: Fix nullptr dereference in cmd_buffer tracepoint
Fixes: ac2046c5b0 ("tu/perfetto: Add app and engine names to the command buffer tracepoint")

Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36389>
(cherry picked from commit fd1e8cf03f)
2025-07-30 11:31:14 +02:00
Mary Guillemard
1c87479193 pan/bi: Properly handle SWZ.v4i8 lowering on v11+
We were not supporting non replicate swizzle and this trigger an
assertion on fossils/parallel-rdp/small_subgroup.foz.

Signed-off-by: Mary Guillemard <mary.guillemard@collabora.com>
Fixes: 1481b14fcb ("pan/bi: Lower SWZ.v4i8 to multiple MKVEC.v2i8 on v11+")
Reviewed-by: Olivia Lee <olivia.lee@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36349>
(cherry picked from commit 525f2972a6)
2025-07-30 11:31:13 +02:00
Maíra Canal
57cc38d1fe vulkan: don't destroy vk_sync_timeline if a point is still pending
Currently, vk_sync_timeline_wait() may report idle while we still have
time points outstanding in vk_queue. This race between vk_sync_timeline
and vk_queue is problematic as vk_queue_submit_cleanup() can end-up
trying to unref a timeline point that was already destroyed in
vk_sync_timeline_finish(), leading to an use-after-free.

Address this race-condition by introducing a reference counter to the
timeline. Each timeline point takes a reference to the timeline when
it's checked out and drops the reference when it's freed. Now, the
timeline is only destroyed when all the references had been dropped.

To guarantee that all references will be dropped and the timeline will
be destroyed, vk_sync_timeline_finish() waits for all pending points
to be checked out.

This commit fixes several Mesa CI flakes in v3dv related to timeline
semaphores.

Cc: mesa-stable
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/12648
Signed-off-by: Maíra Canal <mcanal@igalia.com>
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35921>
(cherry picked from commit ab3aaad957)
2025-07-30 11:31:13 +02:00
Faith Ekstrand
27b2041013 vulkan: Hold a reference to pending vk_sync_timeline_points
Previously, we had a sort of double reference count with refcount being
used to track how many waits were holding a reference and pending being
used to track whether or not it was in the pending list. This meant
that the unref operation actually had to look at both refcount and
pending in order to determine if it could free the time point. This is
way too confusing. Instead, we should just always take a reference
while we're pending.

This also simplifies the over-all interface because there's no longer a
difference between free and release. `struct vk_sync_timeline_point` is
now just a reference-counted API.

Reviewed-by: Maíra Canal <mcanal@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35921>
(cherry picked from commit 088a979e79)
2025-07-30 11:31:13 +02:00
Faith Ekstrand
7a52703c84 vulkan: Rename a bunch of vk_sync_timeline helpers
Whenever we assume the timeline state is locked, we use _locked, pass in
the timeline state explicitly, and rename it so it's clearly an action
which the timeline does on the point.  This makes it far more clear who
owns a reference to what and where.

Reviewed-by: Maíra Canal <mcanal@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35921>
(cherry picked from commit 54eb41588c)
2025-07-30 11:31:13 +02:00
Maíra Canal
66ebd2847e vulkan: create a wrapper struct for vk_sync_timeline
The lifetime of `struct vk_sync_timeline` is tied to the lifetime of
`vk_fence` or `vk_semaphore` objects. To better manage this lifecycle,
create a wrapper struct `vk_sync_timeline_state` that contains the
timeline state and is dynamically allocated when the timeline is
initialized. This separation allows the timeline state to persist
independently of the sync object lifecycle.

Signed-off-by: Maíra Canal <mcanal@igalia.com>
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35921>
(cherry picked from commit d73b9a7229)
2025-07-30 11:31:13 +02:00
Yiwei Zhang
8dffe14c32 lavapipe: fix maint4 vkGetDeviceImageMemoryRequirements
Otherwise plane aspect and dedicated alloc req are missed.

Fixes: 987e8a5a0c ("lavapipe: implement vkGetDevice*MemoryRequirements")
Reviewed-by: Lucas Fryzek <lfryzek@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36335>
(cherry picked from commit 549f6cdb17)
2025-07-30 11:31:13 +02:00
Yiwei Zhang
f4d6af7c54 lavapipe: fix maint4 vkGetDeviceBufferMemoryRequirements
Otherwise dedicated alloc req is missed.

Fixes: 987e8a5a0c ("lavapipe: implement vkGetDevice*MemoryRequirements")
Reviewed-by: Lucas Fryzek <lfryzek@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36335>
(cherry picked from commit e309f1ad45)
2025-07-30 11:31:13 +02:00
Yiwei Zhang
bb04c93d2e lavapipe: fix a leak on a lvp_image_create exit path
This traces back to c688f8f8c5, but the
shape of the fix would be different if against that. So we do the
optimal for the current code flow and only port to stable.

Cc: mesa-stable
Reviewed-by: Lucas Fryzek <lfryzek@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36335>
(cherry picked from commit 16e3293c31)
2025-07-30 11:31:13 +02:00
Eric Engestrom
e25c0a8955 [25.1-only] radeonsi/ci: update expectations for backport MR !36344 2025-07-30 11:31:13 +02:00
Pierre-Eric Pelloux-Prayer
8ea80395aa radeonsi: allow sparse depth textures
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
(cherry picked from commit 1cc52dff05)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36344>
2025-07-30 11:31:13 +02:00
Pierre-Eric Pelloux-Prayer
0e9a4a2f9f radeonsi: allow msaa sparse textures on gfx10+
The hardware doesn't support the prt layouts, but we can use normal
layouts and ac_surface_addr_from_coord to determince which pages
need to be committed.

Reviewed-by: Marek Olšák <marek.olsak@amd.com>
(cherry picked from commit 0e9ba3031e)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36344>
2025-07-30 11:31:13 +02:00
Pierre-Eric Pelloux-Prayer
1afddff65d winsys/radeon: add surface_offset_from_coord
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
(cherry picked from commit ee6d3a593e)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36344>
2025-07-30 11:31:13 +02:00
Mike Blumenkrantz
9f7f82a447 anv: fix format compatibility check typo
the view format is above this

Fixes: 03cdb3078a ("anv: Support multi-planar formats in anv_formats_are_compatible")

Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36224>
(cherry picked from commit 8a4ef5977e)
2025-07-30 11:31:13 +02:00
Georg Lehmann
35ebe14d94 nir/opt_remove_phis: skip unreachable phis
block->imm_dom is NULL for unreachable phis, so the dominance checks would crash.
These blocks should be removed by nir_opt_dead_cf, so don't bother optimizing
them here.

Fixes: 60776f87c3 ("nir/opt_remove_phis: rematerialize constants")
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35935>
(cherry picked from commit fcc9203550)
2025-07-30 11:31:13 +02:00
Rhys Perry
cc362ce40a nir/search: check variable requirements even if it's already seen
Even if it's already seen, the variable might have some unchecked
requirements.

Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/12320
Backport-to: 25.1
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32837>
(cherry picked from commit 7ed9fdf85b)
2025-07-30 11:31:13 +02:00
Rhys Perry
9ab1e75853 nir/cf: have nir_remove_after_cf_node remove phis at the start too
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Backport-to: 25.1
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35975>
(cherry picked from commit f45026751f)
2025-07-30 11:31:13 +02:00
Timothy Arceri
a48b57c2dc util: add workaround for Interstellar Rift
Without this shaders fail to compile due to use of the texture2D
function.

Cc: mesa-stable
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36281>
(cherry picked from commit 971af9cf98)
2025-07-30 11:31:12 +02:00
Alyssa Rosenzweig
cb821fb25f agx: make sure denorm flushing really happens
Backport-to: 25.1
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Mel Henning <mhenning@darkrefraction.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36147>
(cherry picked from commit ecc51d9b9b)
2025-07-30 11:31:12 +02:00
Erico Nunes
c04f4e6cec lima: fix array limit in texture mipmap descriptor
Fix an off-by-one error in the texture mipmap descriptor code.
This fixes a segfault in applications that acutually use all
available mipmap levels.

Fixes: a3f827319f ("lima: add genxml for texture descriptor")

Signed-off-by: Erico Nunes <nunes.erico@gmail.com>
Reviewed-by: Vasily Khoruzhick <anarsoul@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36300>
(cherry picked from commit 92213f647e)
2025-07-30 11:31:12 +02:00
Yiwei Zhang
991767e9be u_gralloc/mapper4: properly expose ChromaSiting types based on api level
ChromaSiting::COSITED_VERTICAL and ChromaSiting::COSITED_BOTH only exist
in api level 35 and above.

Fixes: 64d18f84b0 ("u_gralloc/mapper4: fill u_gralloc_buffer_color_info properly")
Reported-by: Alessandro Astone <ales.astone@gmail.com>
Reviewed-by: Alessandro Astone <ales.astone@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36277>
(cherry picked from commit 2553628369)
2025-07-30 11:31:12 +02:00
Mike Blumenkrantz
0077c8cae7 zink: remove extra gfx prog unref during separable replacement
programs start with one reference per contained shader. the only other
places they can be referenced are:
* batch refs
* merged separable programs during compile

this unref did not match any of those cases and caused early deletion

caselist:
dEQP-GLES31.functional.atomic_counter.inc.8_counters_5_calls_10_threads
dEQP-GLES31.functional.texture.filtering.cube_array.combinations.linear_mipmap_linear_linear_mirror_repeat
dEQP-GLES31.functional.texture.specification.texsubimage3d_pbo.rgb32i_cube_array
dEQP-GLES31.functional.texture.specification.texsubimage3d_pbo.rgb8_image_height_cube_array
dEQP-GLES31.functional.texture.specification.texsubimage3d_depth.depth24_stencil8_cube_array
dEQP-GLES31.functional.sample_shading.min_sample_shading.multisample_texture_samples_2_color
dEQP-GLES31.functional.vertex_attribute_binding.usage.mixed_usage.mixed_attribs_instanced_binding

cc: mesa-stable

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36294>
(cherry picked from commit 6570184201)
2025-07-30 11:31:12 +02:00
Mike Blumenkrantz
d81e54d0b7 zink: account for generated tcs when pruning programs
this otherwise doesn't remove programs from the ctx cache before deletion

caselist:
KHR-GL46.shader_image_size.advanced-ms-tes-float
KHR-GL46.es_31_compatibility.shader_image_load_store.basic-allTargets-atomicVS
KHR-GL46.es_31_compatibility.shader_storage_buffer_object.basic-std140Layout-case4-vs

OR:
KHR-GL46.shader_atomic_counters.basic-usage-tes
KHR-GL46.es_31_compatibility.shader_storage_buffer_object.basic-stdLayout-case1-vs

cc: mesa-stable

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36294>
(cherry picked from commit f83b36f956)
2025-07-30 11:31:12 +02:00
Ian Romanick
a74b51159a nir/print: Don't segfault checking has_debug_info
For example, divergence analysis can call nir_print_instr with an
instruction that doesn't have a block set. When that happens,
print_state::shader will be NULL.

I stumbled on this while testing !36147.

v2: Use nir_instr::has_debug_info instead. Suggested by Konstantin.

Reviewed-by: Konstantin Seurer <konstantin.seurer@gmail.com>
Fixes: ce0f30b230 ("nir: Add variable debug info to instructions")
Fixes: 3aeab4ce40 ("nir/print: Do not print debug information when gathering it")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36267>
(cherry picked from commit 477c0cbbf9)
2025-07-30 11:31:12 +02:00
Lucas Fryzek
13e1adcd0f lp: Don't allocate sampler functions if count is 0
This prevents memory being allocated with a size
of 0 as the sampler count will be 0.

Fixes: #13539
Co-authored-by: Stéphane Cerveau <scerveau@igalia.com>
Reviewed-by: Konstantin Seurer <konstantin.seurer@gmail.com>
Cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36165>
(cherry picked from commit b781ae57a5)
2025-07-30 11:31:12 +02:00
Mike Blumenkrantz
28f746569c egl/x11: don't leak device_name when choosing zink
cc: mesa-stable

Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36268>
(cherry picked from commit 3951125f98)
2025-07-30 11:31:12 +02:00