Commit graph

205036 commits

Author SHA1 Message Date
Gert Wollny
fb2fbf03dd 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-27 08:59:50 +02:00
Gert Wollny
a24427b5cf 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-27 08:59:50 +02:00
Lionel Landwerlin
3ceca2beb7 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-27 08:59:50 +02:00
Iván Briano
80d6e96990 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-27 08:59:49 +02:00
Iván Briano
755d4ffd28 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-27 08:59:49 +02:00
Samuel Pitoiset
53258ecd31 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-27 08:59:49 +02:00
Tapani Pälli
f4b12011a8 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-27 08:59:49 +02:00
Eric Engestrom
42ae0ff7e6 .pick_status.json: Mark 39ffc3f629 as denominated 2025-08-27 08:59:49 +02:00
Eric Engestrom
a573f95508 .pick_status.json: Mark 2cf626d17d as denominated 2025-08-27 08:59:49 +02:00
Eric Engestrom
cd0d3e9316 .pick_status.json: Mark c9746103f5 as denominated 2025-08-27 08:59:49 +02:00
Eric Engestrom
2467928b84 .pick_status.json: Mark a34756bbed as denominated 2025-08-27 08:59:49 +02:00
Eric Engestrom
d253c60ebf .pick_status.json: Mark 85310e912c as denominated 2025-08-27 08:59:49 +02:00
Eric Engestrom
c6b59f0212 .pick_status.json: Update to 47cca88f3c 2025-08-27 08:59:49 +02:00
Eric Engestrom
64f87335e6 docs: add sha sum for 25.1.8
Some checks failed
macOS-CI / macOS-CI (dri) (push) Has been cancelled
macOS-CI / macOS-CI (xlib) (push) Has been cancelled
2025-08-13 16:22:24 +02:00
Eric Engestrom
d2a3608063 VERSION: bump for 25.1.8 2025-08-13 16:12:01 +02:00
Eric Engestrom
3cb6bbf609 docs: add release notes for 25.1.8 2025-08-13 16:12:00 +02:00
Karol Herbst
c695acb5d4 zink: set zink_bo is_user_ptr on creation
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
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-13 12:59:06 +02:00
Karol Herbst
76d3f87af1 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-13 12:59:06 +02:00
Lionel Landwerlin
ef3d8f3cd2 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-13 12:59:06 +02:00
Karol Herbst
f238af252d rusticl: silence new warnings from rustc versions above our rustc target
Cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36747>
(cherry picked from commit 20b2944274)
2025-08-13 12:59:06 +02:00
Karol Herbst
4008aa8c9d rusticl: silence warnings in generated sources
Cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36747>
(cherry picked from commit ea69a01378)
2025-08-13 12:59:06 +02:00
David Rosca
78fec891a5 rusticl/ptr: Fix hidden lifetime warning
error: hiding a lifetime that's elided elsewhere is confusing
   --> ../src/gallium/frontends/rusticl/util/ptr.rs:166:18
    |
166 |     pub fn entry(&mut self, ptr: P) -> Entry<P, T> {
    |                  ^^^^^^^^^             ----------- the same lifetime is hidden here
    |                  |
    |                  the lifetime is elided here

Reviewed-by: Karol Herbst <kherbst@redhat.com>
Cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36747>
(cherry picked from commit 09dd2bc388)
2025-08-13 12:59:06 +02:00
Yiwei Zhang
758d265826 vulkan/util: add missing vulkan header
Unlike features, property members do need Vulkan header. Currently it
relies on the fact that vk_physical_device.h has included some other
headers that include vulkan.h before this.

Cc: mesa-stable
Reviewed-by: Lucas Fryzek <lfryzek@igalia.com>
Acked-by: Konstantin Seurer <konstantin.seurer@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36702>
(cherry picked from commit 567cff487c)
2025-08-13 12:59:06 +02:00
Gert Wollny
19b9187907 r00/sfn: Fix copy propagation into buffer load address
A buffer load can not use an indirect register as address.

Fixes: 79ca456b48 ("r600/sfn: rewrite NIR backend")

Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36488>
(cherry picked from commit 874005aeb7)
2025-08-13 12:59:05 +02:00
Mike Blumenkrantz
592fd9dce4 perfetto: unify init
util_perfetto_init() was called in some places, util_cpu_trace_init()
was called in other places, and some places used tracing without ever
calling either of them

util_cpu_trace_init() is now guaranteed to be called:
* on gallium screen create
* on VK instance create

thus no driver/frontend/etc should ever need to call this manually

cc: mesa-stable

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36628>
(cherry picked from commit c7045e3e63)
2025-08-13 12:59:05 +02:00
Jordan Justen
4bd5e869bf intel/dev: Add BMG 0xe209 PCI ID
Backport-to: 25.1, 25.2
Ref: ccfb15b815
Ref: bspec 68090
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
Reviewed-by: José Roberto de Souza <jose.souza@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36668>
(cherry picked from commit 12eb51fb0a)
2025-08-13 12:59:05 +02:00
Samuel Pitoiset
7f419d7ab2 radv/amdgpu: fix creation with different but unused RADV_PERFTEST flags
This fixes an issue with Hellblade Senua's Sacrifice because
RADV_PERFTEST_RT_WAVE_64 is set using drirc, but if two devices are
created RADV_PERFTEST flags might differ.

The proposed solution is to filter out unused RADV_PERFTEST flags for
the winsys.

Cc: mesa-stable
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36727>
(cherry picked from commit 0c9f079295)
2025-08-13 12:59:05 +02:00
Samuel Pitoiset
16ef96fa07 ac,radv,radeonsi: fix programming PA_SU_PRIM_FILTER_CNTL on GFX12
GFX12 seems to behave slightly differently. Setting these bits to TRUE
causes zero-area triangles to not pass the primitive clipping stage.
So, the actual number of primitives output by the primitive clipping
stage was wrong.

After digging a lot, it seems PAL doesn't set these bits either on
GFX12.

CC: mesa-stable
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36670>
(cherry picked from commit b2ea120732)
2025-08-13 12:59:05 +02:00
Gert Wollny
768a7c3035 r600: Update GPR count when adding a GDS instruction
CC: mesa-stable

Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36554>
(cherry picked from commit db8c3aae8d)
2025-08-13 12:59:05 +02:00
Gert Wollny
b82695edbb r600/sfn: check number of fsat64 source uses properly
Fixes: 255eee10ac
    r600/sfn: Implement fsat for 64 bit ops

Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36585>
(cherry picked from commit 67d0f51029)
2025-08-13 12:59:05 +02:00
Eric Engestrom
31da7aa136 ci: track changes to new src/x11/ folder
Since 4095fac72b ("loader: move some common dri3 functions out
of dri3 loader") the new folder has been created, and since
950dac6e6c ("x11: Add an x11_xlib_display_is_thread_safe()
helper") it's also used by vulkan x11, so adding it to the core rules.

Fixes: 4095fac72b ("loader: move some common dri3 functions out of dri3 loader")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36705>
(cherry picked from commit e551ca1318)
2025-08-13 12:59:05 +02:00
Ricardo Garcia
91cf8f8191 radv: Ignore image barrier queue families if equal
The src and dst queue family indices in an image memory barrier may
contain arbitrary values that can be ignored unless both are different.
This fixes a crash in upcoming CTS tests.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34691>
(cherry picked from commit bc44d029df)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36461>
2025-08-13 12:59:05 +02:00
Lars-Ivar Hesselberg Simonsen
1a474a31fe u_trace: Indirect capture fixes
Fixes a missing sizeof parenthesis.
Fixes multiple indirects writing to the same address.

Fixes: 0a17035b5c ("u_trace: add support for indirect data")
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Christoph Pillmayer <christoph.pillmayer@arm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36519>
(cherry picked from commit 78ca5ef87f)
2025-08-13 12:59:05 +02:00
Yiwei Zhang
d7eb552051 venus: fix a race condition in ring shmem reuse
With the shmem cache, vkDestroyRingMESA must be a synchronous call to
ensure renderer side ring destruction has finished before the same shmem
gets reused by other things.

Cc: mesa-stable
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/13672
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36664>
(cherry picked from commit c58b3fa3a4)
2025-08-13 12:59:05 +02:00
Yiwei Zhang
90907a05ef vulkan/wsi/headless: allow explicit modifiers
When wsi device has modifier support, simply allow all driver supported
modifiers for the requested format.

Cc: mesa-stable
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/12534
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/13636
Reviewed-by: Janne Grunau <j@jannau.net>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36658>
(cherry picked from commit 24cb071d47)
2025-08-13 12:59:04 +02:00
Yiwei Zhang
89178e11b6 util/perf: amend missing atrace_init
When perfetto isn't enabled, atrace can still be used freely on Android.
All trace micros have accounted for that, but the init is missed.

Cc: mesa-stable
Acked-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36655>
(cherry picked from commit e74516dbc7)
2025-08-13 12:59:04 +02:00
Karol Herbst
57c2b606d5 zink: fix data race in descriptor_util_pool_key_get
Two threads could end up creating a pool_key for the same hash and end up
overwriting the earlier one.

Fixes flaky image kernel_read_write CL CTS tests.

Cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36652>
(cherry picked from commit 9d8c95f8d3)
2025-08-13 12:59:04 +02:00
David Rosca
6995580a0c radv: Add timeout to video encode query
Reviewed-by: Dave Airlie <airlied@redhat.com>
Cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36645>
(cherry picked from commit 142d54817a)
2025-08-13 12:59:04 +02:00
Mike Blumenkrantz
5b4122e6af zink: don't access ctx in submit_queue
this can be executed from a thread

Fixes: 63e17ccc0a ("zink: rework sparse semaphore waits")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36643>
(cherry picked from commit f5f7a5f801)
2025-08-13 12:59:04 +02:00
Alyssa Rosenzweig
ddeb863c54 agx: gate scratch opt on internal shaders
fixes a bunch of OpenCL CTS including test_basic vload_private due to failing
to relower the derefs but also lol.

Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Backport-to: 25.1
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36631>
(cherry picked from commit 8b96f66da6)
2025-08-13 12:59:04 +02:00
Karol Herbst
10e36b4cce rusticl/gl: flush and wait on gl objects inside clEnqueueAcquireGLObjects
This fixes flakes in the gl/gles OpenCL CTS tests on radeonsi and zink.

Cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36249>
(cherry picked from commit 45c28a20a4)
2025-08-13 12:59:04 +02:00
Karol Herbst
23833bebf5 rusticl/gl: only flush objects on import if we get a valid fd
If no context is current we might not get anything to wait on.

Cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36249>
(cherry picked from commit f6b844e239)
2025-08-13 12:59:04 +02:00
Karol Herbst
5f371ab2fa st/interup: flushing objects is a no-op when no context is bound
Luckily this is backwards compatible, because without this change users
would simply run into crashes within _mesa_glthread_finish.

Cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36249>
(cherry picked from commit 4d8b08e7ec)
2025-08-13 12:59:04 +02:00
Karol Herbst
5495dab304 rusticl/gl: store the mesa_glinterop_export_in
We need it later for proper flushing and waiting.

Cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36249>
(cherry picked from commit 2e1fff8e5d)
2025-08-13 12:59:04 +02:00
Karol Herbst
d0121cdfd2 rusticl/mesa: wire up fence_server
We need this to wait on imported fences.

Cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36249>
(cherry picked from commit 8617cf46d6)
2025-08-13 12:59:04 +02:00
Eric R. Smith
1bcc0e5bed panvk: fix a NULL pointer dereference in occlusion queries
If a meta operation (like a blit or clear) happens while occlusion
queries are active, we temporarily disable the query. Unfortunately
the code for this did not clear out the `syncobj` field. In rare
combinations of circumstances this could cause an attempt to issue
a write back of the occlusion query values, and since we've zeroed
the `ptr` field it writes to a NULL value, causing a bus fault and
device lost error.

Fixes: 61534faf4e ("panvk: Wire occlusion queries to internals")
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36525>
(cherry picked from commit 24c692c981)
2025-08-13 12:59:04 +02:00
Karol Herbst
c353e6ed2c rusticl: use pipe_sampler_view_release
Fixes: a245ed462a ("rusticl/mesa: use pipe_sampler_view_reference")
Suggested-by: Seán de Búrca <leftmostcat@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36613>
(cherry picked from commit cfd8b9d3b3)
2025-08-13 12:59:03 +02:00
Kenneth Graunke
1013158227 intel: Disable 16x MSAA support on Xe3
16x MSAA isn't supported at all on certain Xe3 variants, and on its way
out on the rest.  Most vendors choose not to support it, and many apps
offer more modern multisampling and upscaling techniques these days.

Only 2/4/8x are supported going forward.

Cc: mesa-stable
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Sagar Ghuge <sagar.ghuge@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36592>
(cherry picked from commit dc2c3cf06b)
2025-08-13 12:59:03 +02:00
Rohan Garg
71812c719c intel/compiler: use the WA framework when emitting WA 14014595444
Fixes: d276ad4 "intel/compiler: implement Wa_14014595444 for DG2"
Signed-off-by: Rohan Garg <rohan.garg@intel.com>
Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36262>
(cherry picked from commit c978394e00)
2025-08-13 12:59:03 +02:00
Rob Clark
24ab5c4c4f freedreno: Remove obsolete comment
This hasn't been quite true for quite a while.

Fixes: 78c8a8af80 ("freedreno: Generate device-info tables at build time")
Signed-off-by: Rob Clark <rob.clark@oss.qualcomm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36589>
(cherry picked from commit f10217a6a3)
2025-08-13 12:59:03 +02:00