Commit graph

209030 commits

Author SHA1 Message Date
Robert Mader
ba43727af6 gallium: Set and count all extra samplers
After the commit mentioned below the `extra` variable only holds the
last added extra sampler. For 3-plane formats this results in one extra
sampler being leaked.

Add the bits for each extra sampler instead.

Fixes: abcd02a07d (gallium: Properly handle non-contiguous used sampler view indexes)
Signed-off-by: Robert Mader <robert.mader@collabora.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Tested-by: Matthias Reichl <hias@horus.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36870>
(cherry picked from commit 25fe82630a)
2025-09-03 12:08:48 +02:00
David Rosca
6750c5f70b radv/video: Disable H264 encode 8x8 transform when CABAC is disabled
VCN5 only supports it with CABAC enabled.

Fixes: 960f63596f ("radv/video: Add VCN5 encode support")
Reviewed-by: Ruijing Dong <ruijing.dong@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36881>
(cherry picked from commit 8ac9a9afee)
2025-09-03 12:08:48 +02:00
David Rosca
e048d6204c radeonsi/vcn: Disable H264 encode 8x8 transform when CABAC is disabled
VCN5 only supports it with CABAC enabled.

Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/13029
Fixes: e509139f61 ("radeonsi/vcn: Add support for H264 8x8 transform on VCN5")
Reviewed-by: Ruijing Dong <ruijing.dong@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36881>
(cherry picked from commit 2e400fc099)
2025-09-03 12:08:48 +02:00
Jarrett Johnson
836891ad44 nir: tag cls variable as maybe unused
Windows release builds strips asserts resulting in variable
seen as unused (/we4189)

Co-authored-by: Georg Lehmann <dadschoorse@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36915>
2025-09-03 12:08:48 +02:00
Jianxun Zhang
9b8fdca8bc anv: Fix PAT entry in importing (xe2)
If a compressed bo is imported, we should set the corresponding
compressed PAT.

Fixes video corruption in gamescope:
gamescope --force-composition -- vkcube

Close: https://gitlab.freedesktop.org/mesa/mesa/-/issues/13442

Signed-off-by: Jianxun Zhang <jianxun.zhang@intel.com>
Reviewed-by: José Roberto de Souza <jose.souza@intel.com>
Reviewed-by: Nanley Chery <nanley.g.chery@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36275>
(cherry picked from commit 8d98bf289d)
2025-09-03 12:08:48 +02:00
Jianxun Zhang
cbd43cd9f8 anv: No compression on host memory allocation (xe2)
The Xe kernel driver doesn't allow vm_bind on compressed bo
if it has user pointer. And we probably shouldn't enable CCS
compression on memory in any case.

This change is necessary to prevent failures once we adjust the
priority of compression PAT entries in a following commit:

Vulkan CTS:
dEQP-VK.api.buffer_marker.compute.external_host_mem.top_of_pipe.
memory_dep.buffer_copy

dEQP-VK.memory.external_memory_host.simple_allocation.
minImportedHostPointerAlignment_x3

anv_kmd_backend.c:308: xe_vm_bind_op: Assertion
`errno_ != EINVAL' failed.

Signed-off-by: Jianxun Zhang <jianxun.zhang@intel.com>
Reviewed-by: José Roberto de Souza <jose.souza@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36275>
(cherry picked from commit c766586957)
2025-09-03 12:08:48 +02:00
Job Noorman
b6e59297f7 ir3: emit descriptor prefetch in block dominated by its sources
Descriptor prefetches may be generated for instructions in control flow.
This means we cannot simply emit prefetches at the end of the preamble
because that may not be dominated by all their sources. This commit uses
the helpers introduced by e7ac1094f6 ("ir3: rematerialize preamble defs
in block dominated by sources") to find the correct block to insert
prefetches.

Fixes NIR validation errors in Dying Light 2.

Signed-off-by: Job Noorman <jnoorman@igalia.com>
Fixes: 4e2a0a5ad0 ("ir3: Add descriptor prefetching optimization on a7xx")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36885>
(cherry picked from commit 24cdb0b636)
2025-09-03 12:08:48 +02:00
Caio Oliveira
ac602c97c9 brw: Fix folding case for MAD instruction with all immediates
Fixes: b605f76b2a ("brw/algebraic: Constant fold multiplicands of MAD")
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36867>
(cherry picked from commit 74a4e7dd4b)
2025-09-03 12:08:48 +02:00
Lionel Landwerlin
04fc414ea7 anv: fix uninitialized return value
We don't go through the loop when there are no queues.

Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Fixes: 884df891d7 ("anv: allow device creation with no queue")
Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36910>
(cherry picked from commit 1bab95551a)
2025-09-03 12:08:47 +02:00
Samuel Pitoiset
e281b37c6f radv: dirty some states from graphics pipeline earlier
This might actually fixes a couple of things because needed dynamic
states are computed before radv_emit_graphics_pipeline(), so dirtying
them too late doesn't make much sense.

This doesn't fix anything known.

Cc: mesa-stable
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36900>
(cherry picked from commit d40e841cc4)
2025-09-03 12:08:47 +02:00
Georg Lehmann
6a75048405 nir/uub: fix exclusive scans
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>

Cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36874>
(cherry picked from commit a2e48d2ede)
2025-09-03 12:08:47 +02:00
Lionel Landwerlin
f9881a9eec brw: fix analysis dirtying with pulled constants
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Fixes: 5c17299084 ("brw: enable A64 pulling of push constants")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36455>
(cherry picked from commit df37c7ca74)
2025-09-03 12:08:47 +02:00
Job Noorman
97ecc0d4dc ir3: don't vectorize nir_op_sdot_4x8_iadd[_sat]
They don't support being repeated.

Fixes a compiler crash in Hogwarts Legacy.

Signed-off-by: Job Noorman <jnoorman@igalia.com>
Fixes: 58d18bc7a8 ("ir3: lower vectorized NIR instructions")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36886>
(cherry picked from commit b53682f41b)
2025-09-03 12:08:47 +02:00
Iván Briano
1c3c022f7d anv: fix capture/replay of sparse images with descriptor buffer
We were not implementing vkGetImageOpaqueCaptureDescriptorDataEXT,
relying on the common implementation that does nothing. That works well
enough for regular images because the fixed address needed for
capture/replay is handled by the memory allocation path, but for sparse
images we initialize the sparse bindings at image creation time.

Here we implement the function to retrieve the addresses of all the
used bindings for the image, then use all of them at creation time.
Also, set the correct alloc_flags for this to work.

Fixes: 43b57ee8a5 ("anv: add capture/replay support for image with descriptor buffers")
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35872>
(cherry picked from commit 20f546d6c1)
2025-09-03 12:08:47 +02:00
Faith Ekstrand
5cb6fbb491 subprojects: Stop calling add_languages() in paste-1-rs/meson.build
Reviewed-by: Mel Henning <mhenning@darkrefraction.com>
Cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36849>
(cherry picked from commit 291ccffd3d)
2025-09-03 12:08:47 +02:00
Antonio Ospite
d7fcc766fe compiler/rust: fix errors about hiding elided lifetime
In some setups the rust compiler emits errors like the following:

-----------------------------------------------------------------------
error: hiding a lifetime that's elided elsewhere is confusing
   --> ../subprojects/proc-macro2-1.0.86/src/parse.rs:125:25
    |
125 | fn block_comment(input: Cursor) -> PResult<&str> {
    |                         ^^^^^^     -------------
    |                         |          |       |
    |                         |          |       the same lifetime is elided here
    |                         |          the same lifetime is hidden here
    |                         the lifetime is hidden here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
    = note: `-D mismatched-lifetime-syntaxes` implied by `-D warnings`
    = help: to override `-D warnings` add `#[allow(mismatched_lifetime_syntaxes)]`
help: use `'_` for type paths
    |
125 | fn block_comment(input: Cursor<'_>) -> PResult<'_, &str> {
    |                               ++++             +++
-----------------------------------------------------------------------

Follow the solution suggested by the compiler to silence the errors, for
all the observed occurrences.

Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Reviewed-by: Mel Henning <mhenning@darkrefraction.com>
Cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36849>
(cherry picked from commit 8f84ae7de7)
2025-09-03 12:08:47 +02:00
Antonio Ospite
8639a38bc1 nak/nouveau: silence errors about never used methods
When building nvk for Android the rust compiler emits the following
errors:

-----------------------------------------------------------------------
error: methods `get_pred_src`, `get_u32_bnot_src`, `get_carry_src`, `set_pred_dst`, and `set_carry_dst` are never used
    --> ../src/nouveau/compiler/nak/ir.rs:1371:12
     |
1370 | impl OpFoldData<'_> {
     | ------------------- methods in this implementation
1371 |     pub fn get_pred_src(&self, op: &impl SrcsAsSlice, src: &Src) -> bool {
     |            ^^^^^^^^^^^^
...
1404 |     pub fn get_u32_bnot_src(&self, op: &impl SrcsAsSlice, src: &Src) -> u32 {
     |            ^^^^^^^^^^^^^^^^
...
1413 |     pub fn get_carry_src(&self, op: &impl SrcsAsSlice, src: &Src) -> bool {
     |            ^^^^^^^^^^^^^
...
1446 |     pub fn set_pred_dst(&mut self, op: &impl DstsAsSlice, dst: &Dst, b: bool) {
     |            ^^^^^^^^^^^^
...
1450 |     pub fn set_carry_dst(&mut self, op: &impl DstsAsSlice, dst: &Dst, b: bool) {
     |            ^^^^^^^^^^^^^
     |
     = note: `-D dead-code` implied by `-D warnings`
     = help: to override `-D warnings` add `#[allow(dead_code)]`

error: method `eval` is never used
    --> ../src/nouveau/compiler/nak/ir.rs:1523:12
     |
1522 | impl PredSetOp {
     | -------------- method in this implementation
1523 |     pub fn eval(&self, a: bool, b: bool) -> bool {
     |            ^^^^

error: method `to_mask` is never used
    --> ../src/nouveau/compiler/nak/ir.rs:5625:12
     |
5614 | impl SuClampRound {
     | ----------------- method in this implementation
...
5625 |     pub fn to_mask(&self) -> u32 {
     |            ^^^^^^^

error: method `cast` is never used
    --> ../src/nouveau/compiler/nak/ir.rs:6041:8
     |
6006 | impl IMadSpSrcType {
     | ------------------ method in this implementation
...
6041 |     fn cast(&self, v: u32) -> i64 {
     |        ^^^^
-----------------------------------------------------------------------

Add `#[allow(dead_code)]` to silence the errors, as suggested by the
compiler.

Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Reviewed-by: Mel Henning <mhenning@darkrefraction.com>
Cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36849>
(cherry picked from commit 5c019bdee5)
2025-09-03 12:08:47 +02:00
Nataraj Deshpande
8eddb8e456 anv: add feature flags for linearly tiled ASTC images
In case of emulated ASTC on supported platforms, currently returning
0 for linear tiled images causes vpGetPhysicalDeviceProfileSupport
failure during AndroidBaselineProfile test. The patch handles it
similar to linearly-tiled images that are used for transfers.

Fixes android.graphics.cts.VulkanFeaturesTest#testAndroidBaselineProfile2021Support.

Cc: mesa-stable
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36798>
(cherry picked from commit f67edacf8b)
2025-09-03 12:08:47 +02:00
Eric Engestrom
199ee1bada .pick_status.json: Mark a34756bbed as denominated 2025-09-03 12:08:47 +02:00
Eric Engestrom
ba48da6b46 .pick_status.json: Mark 85310e912c as denominated 2025-09-03 12:08:47 +02:00
Eric Engestrom
a932dd04d2 .pick_status.json: Update to c0e51bcf24 2025-09-03 12:08:47 +02:00
Eric Engestrom
a30a465cba docs: add sha sum for 25.2.1
Some checks failed
macOS-CI / macOS-CI (dri) (push) Has been cancelled
macOS-CI / macOS-CI (xlib) (push) Has been cancelled
2025-08-20 16:19:05 +02:00
Eric Engestrom
d6e3b017b2 VERSION: bump for 25.2.1 2025-08-20 15:58:30 +02:00
Eric Engestrom
fc459dbabb docs: add release notes for 25.2.1 2025-08-20 15:58:30 +02:00
Georg Lehmann
8664b68f98 aco/isel: fix vectorized i2i16 with 8bit vec8 source
The extract index is in dwords, not bytes.

Fixes: 92d433c54a ("aco: vectorize conversions from 8bit to 16bit")
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36869>
(cherry picked from commit 639b91bb48)
2025-08-20 13:35:09 +02:00
David Rosca
92e3004cda radv/video: Enable AV1 decode workaround for gfx1153
Cc: mesa-stable
Reviewed-by: Ruijing Dong <ruijing.dong@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36725>
(cherry picked from commit 638fa01203)
2025-08-20 13:35:09 +02:00
David Rosca
40c6bec8bc radeonsi/vcn: Enable AV1 decode workaround for gfx1153
Cc: mesa-stable
Reviewed-by: Ruijing Dong <ruijing.dong@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36725>
(cherry picked from commit 4893e09c10)
2025-08-20 13:35:09 +02:00
David Rosca
ddd18d6b3e ac/vcn_dec: Add av1_intrabc_workaround
Cc: mesa-stable
Reviewed-by: Ruijing Dong <ruijing.dong@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36725>
(cherry picked from commit 231d877cc8)
2025-08-20 13:35:09 +02:00
Tapani Pälli
2fd1222a4f compiler/types: handle BFLOAT16 when decoding blob
New type was not handled in the switch which lead to hitting following
assert when running tests with pipeline cache:

   deqp-vk: ../src/compiler/glsl_types.c:3334: decode_type_from_blob: Assertion `!"Cannot decode type!"' failed.

Fixes: 9e5d7eb88d ("compiler/types: add a bfloat16 type")
Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
Reviewed-by: Caio Oliveira <caio.oliveira@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36833>
(cherry picked from commit ef09df004e)
2025-08-20 13:35:09 +02:00
Erik Faye-Lund
f4b4191f1c pan: use translate_s_format for stencil
While this was also using translate_zs_format() before the commit in
question, that's didn't lead to any real issues, because only a single
value was legal here before. While it's not entirely in-spec to use
other values, it seems the HW doesn't mind.

But when this logic was reworked, the typed field was used instead. This
lead to a compiler warning on Clang.

Let's correct this properly here, rather than papering over the compiler
warning.

Fixes: 7a763bb0a3 ("pan/genxml: Rework the RT/ZS emission logic")
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Tested-by: Yiwei Zhang <zzyiwei@chromium.org>
Reviewed-by: Eric R. Smith <eric.smith@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36606>
(cherry picked from commit 0dcf510c05)
2025-08-20 13:35:09 +02:00
Yiwei Zhang
43fd1b7663 venus: hide swapchainMaintenance1 behind wsi guard
..otherwise would give false alarm on Android.

Fixes: acd5497067 ("venus: support wsi maintenance1 extensions")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36834>
(cherry picked from commit fd0b41b98d)
2025-08-20 13:35:09 +02:00
Mike Blumenkrantz
974920d06f zink: remove UNSYNCHRONIZED map flag during unmap flush for non-subdata calls
this avoids a scenario where a non-subdata UNSYNCHRONIZED unmap triggers through
tc at the same time the frontend calls an UNSYNCHRONIZED subdata call
in the main thread, which desynchronizes the cmdbuf and hits an assert

Fixes: 8ee0d6dd71 ("zink: add a third cmdbuf for unsynchronized (not reordered) ops")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36846>
(cherry picked from commit cf5d41575b)
2025-08-20 13:35:09 +02:00
Job Noorman
a663b85f03 ir3/array_to_ssa: fix updating/removing phis
Fix checking instruction flags instead of dst flags, and updating src
instead of def.

Totals:
MaxWaves: 2381954 -> 2381958 (+0.00%)
Instrs: 49073677 -> 49073417 (-0.00%)
CodeSize: 102537524 -> 102536824 (-0.00%)
NOPs: 8396340 -> 8396432 (+0.00%); split: -0.00%, +0.00%
MOVs: 1450777 -> 1450422 (-0.02%)
Full: 1714304 -> 1714287 (-0.00%)
(ss): 1126433 -> 1126463 (+0.00%); split: -0.00%, +0.00%
(ss)-stall: 4013834 -> 4013854 (+0.00%)
(sy)-stall: 16713036 -> 16713082 (+0.00%)
Cat0: 9252109 -> 9252194 (+0.00%); split: -0.00%, +0.00%
Cat1: 2337941 -> 2337592 (-0.01%)
Cat7: 1636810 -> 1636814 (+0.00%); split: -0.00%, +0.00%

Totals from 5 (0.00% of 164705) affected shaders:
MaxWaves: 42 -> 46 (+9.52%)
Instrs: 9052 -> 8792 (-2.87%)
CodeSize: 16806 -> 16106 (-4.17%)
NOPs: 2369 -> 2461 (+3.88%); split: -0.17%, +4.05%
MOVs: 1140 -> 785 (-31.14%)
Full: 133 -> 116 (-12.78%)
(ss): 206 -> 236 (+14.56%); split: -0.97%, +15.53%
(ss)-stall: 901 -> 921 (+2.22%)
(sy)-stall: 6229 -> 6275 (+0.74%)
Cat0: 2695 -> 2780 (+3.15%); split: -0.22%, +3.38%
Cat1: 1333 -> 984 (-26.18%)
Cat7: 419 -> 423 (+0.95%); split: -0.48%, +1.43%

Signed-off-by: Job Noorman <jnoorman@igalia.com>
Fixes: 3ac743c333 ("ir3: Add pass to lower arrays to SSA")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36714>
(cherry picked from commit ca15116fa1)
2025-08-20 13:35:09 +02:00
Natalie Vock
90c6ed5af2 radv: Only expose indirect raytracing on gfx7+
It relies on unaligned indirect dispatches which are broken on gfx6.

Cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30811>
(cherry picked from commit 4de3a5cce3)
2025-08-20 13:35:09 +02:00
Georg Lehmann
e016f3ff19 nir/uub: guard against division by 0
Fixes: 8ee5440073 ("nir/uub: improve ishl/imul with constant sources")

Reviewed-by: Konstantin Seurer <konstantin.seurer@gmail.com>
Reviewed-by: Karol Herbst <kherbst@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36805>
(cherry picked from commit de3d04dd72)
2025-08-20 13:35:08 +02:00
Samuel Pitoiset
dbdb297b3d radv: fix color attachment remapping with fast-GPL/ESO
If vkCmdSetRenderingAttachmentLocations() isn't setting all color
attachment locations (ie. MAX_RTS), the remapping might be wrong
because MESA_VK_ATTACHMENT_UNUSED is used to trim the unused locations

Found by inspection while implementing a new extension.

Cc: mesa-stable
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36778>
(cherry picked from commit 45c91edd18)
2025-08-20 13:35:08 +02:00
Max R
ed3832671e d3d10umd: De-bufferize OutputMerger
Remove all references to union pipe_surface_desc. This also removes
support for buffer RenderTargetView, requires further investigation.

Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/13577
Fixes: 05f8b59c90 ("gallium: delete union pipe_surface_desc")

Signed-off-by: Max Ramanouski <max8rr8@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36769>
(cherry picked from commit 53b5c759c0)
2025-08-20 13:35:08 +02:00
Patrick Lerda
55eda75262 r600: fix evergreen gds atomic_counter_comp_swap
This change fixes the gds implementation of
atomic_counter_comp_swap which requires three arguments.
This update is based on 4e3b43f180 "r600/atomic: fix
ATOMCAS instruction." which was the tgsi implementation.

Note: https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36554
is required for this change to work properly on cayman.

This change was tested on palm, cypress and barts. Here is the test fixed:
khr-gl4[5-6]/shader_atomic_counter_ops_tests/shaderatomiccounteropsexchangetestcase: 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/36254>
(cherry picked from commit 521b848ea8)
2025-08-20 13:35:08 +02:00
Faith Ekstrand
a445c3ae12 anv: Set the Shader capability when compiling the FP64 shader
Otherwise the SPIR-V parser prints a warning the first time the driver
is loaded after a fresh compile.

Fixes: 91b62e9868 ("anv: Use spirv_capabilities for the float64 shader")
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36783>
(cherry picked from commit 94931fd4f4)
2025-08-20 13:35:08 +02:00
Gert Wollny
9b3f2e9bad r600/sfn: Fix AR use tracking off-by-one error
The evauation of loading the AR register was off by one, so that
splitting an ALU group could actually happen after AR was loaded
resulting in a failure to lower to assembly.

Fixes: d617052db6 ("r600/sfn: take address loads into account when scheduling")

Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36742>
(cherry picked from commit 5d0f212d81)
2025-08-20 13:35:08 +02:00
Gert Wollny
96acd6d976 r600/sfn: When splitting an ALU CF update possible start of next CF
Without this update a very long ALU block may not be splitted as
required and lowering to assembly may fail because the maximum
supported length of a ALU CF is overrun.

Fixes: 6aafa2bb49 ("r600/sfn: Split ALU blocks in scheduler to fit into 128 slots")

Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36742>
(cherry picked from commit 63c801e8c2)
2025-08-20 13:35:08 +02:00
Lionel Landwerlin
d861af2513 anv: fix R64* vertex buffer format support
Disabled by mistake :(

Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Fixes: 5c7397c751 ("anv: add mapping for VBO formats in format mapping")
Reviewed-by: Ivan Briano <ivan.briano@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36771>
(cherry picked from commit 381cb2cabd)
2025-08-20 13:35:08 +02:00
Iván Briano
0c53160139 anv: dirty descriptor state on CmdSetDescriptorBufferOffets
Calling vkCmdBindDescriptorBuffersEXT() does not invalidate previously
set descriptor sets. Move the state dirtying to
vkCmdSetDescriptorBufferOffets.

Fixes: ab7641b8dc ("anv: implement descriptor buffer binding")
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36768>
(cherry picked from commit 35190aac91)
2025-08-20 13:35:08 +02:00
Iván Briano
3cd6ddf46c anv: check for pending_db_mode when dirtying descriptor mode
If an application switches back and forth between descriptor sets and
descriptor buffers before executing a draw/dispatch, we could end up in
a wrong state due to pending_db_mode not getting updated.

Fixes: ab7641b8dc ("anv: implement descriptor buffer binding")
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36768>
(cherry picked from commit 382b8e3aa2)
2025-08-20 13:35:08 +02:00
Samuel Pitoiset
723ce7ce8f radv: fix reserving space for emitting push constants with DGC IES
layout->push_constant_mask is only the DGC push constant mask (ie. the
tokens that are specified), but with IES all push constants are emitted
from the DGC shader. So it should be the total range of push constant.

This used to work by luck due to the preprocess buffer alignment.

Cc: mesa-stable
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36753>
(cherry picked from commit 3359386145)
2025-08-20 13:35:08 +02:00
Lorenzo Rossi
1620d34de5 nak/kepler: Refine instruction scheduling
Previously some KeplerA chips failed various dEQP tests when instruction
scheduling was enabled.
In particular, `memory_model.message_passing` had issues where a
`membar` instruction canceled some in-flight predicate writes, and
`barrier.write_image_tess_control_read_image_compute.image_128_r32_uint`
had issues around the `Cont` instruction.

This patch refines instruction scheduling to better match the output of
nvcc. Fixing the various dEQP failing tests.

Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/13528
Fixes: c35990c4bc ("nak: Add real instruction dependencies for Kepler")
Signed-off-by: Lorenzo Rossi <snowycoder@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36393>
(cherry picked from commit 7375dfd56d)
2025-08-20 13:35:08 +02:00
Tapani Pälli
1bf626cea7 isl/blorp: handle failing 96bpp linear blit case
Fix the aux usage assert in blorp for 96bpp linear blit and provide CMF
values for RGB formats supported by isl_format_rgb_to_rgba.

CC: mesa-stable
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/13670
Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
Reviewed-by: Sagar Ghuge <sagar.ghuge@intel.com>
Reviewed-by: Nanley Chery <nanley.g.chery@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36709>
(cherry picked from commit 42088cd602)
2025-08-20 13:35:08 +02:00
Karol Herbst
822a60a340 zink: set zink_bo is_user_ptr on creation
We need to release user_ptr resources earlier, so we don't keep stale
references around, but for that to happen we also need to know which
resource is a user_ptr one in the first place.

Cc: mesa-stable
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36701>
(cherry picked from commit e31d5bc5a9)
2025-08-20 13:35:08 +02:00
Karol Herbst
0b3f1f19a9 anv: do not map from_host_ptr bos in image_bind_address
Rusticl running on zink might end up creating an 1D image from a host_ptr
and zink might bind it with VK_IMAGE_USAGE_HOST_TRANSFER_BIT_EXT.

That ended up hitting an assert inside anv_device_map_bo.

Cc: mesa-stable
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36701>
(cherry picked from commit 8d8f5558eb)
2025-08-20 13:35:08 +02:00
Lionel Landwerlin
baff5a8324 anv: fix missing meson dep
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Cc: mesa-stable
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/13627
Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36737>
(cherry picked from commit a973fb1bb0)
2025-08-20 13:35:08 +02:00