Commit graph

7508 commits

Author SHA1 Message Date
Rob Clark
9260c8b145 freedreno/registers: Add a6xx CMP counter group
Signed-off-by: Rob Clark <rob.clark@oss.qualcomm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41757>
2026-05-22 16:47:04 +00:00
Rob Clark
96c5179c02 freedreno/registers: Skip deprecated warns for kernel
Signed-off-by: Rob Clark <rob.clark@oss.qualcomm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41757>
2026-05-22 16:47:04 +00:00
Valentine Burley
190ce8280f meson: Add Soong compatibility compiler flags to Vulkan drivers
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Suggested by @gurchetansingh.

Android's Soong build system treats several compiler warnings as errors
by default: https://android.googlesource.com/platform/build/soong/+/27f57506/cc/config/global.go/#218

To catch these issues in Mesa, introduce `soong_compat_c_args`
and `soong_compat_cpp_args` with the following flags treated as errors:
 -D_LIBCPP_ENABLE_THREAD_SAFETY_ANNOTATIONS
 -Werror=date-time
 -Werror=gnu-alignof-expression
 -Werror=ignored-qualifiers
 -Werror=implicit-fallthrough
 -Werror=int-conversion
 -Werror=missing-prototypes
 -Werror=pragma-pack
 -Werror=pragma-pack-suspicious-include
 -Werror=sizeof-array-div
 -Werror=string-plus-int
 -Werror=unreachable-code-loop-increment

These compatibility flags are added to the meson configurations
for ANV, Gfxstream, Lavapipe, PanVK, Turnip, and Venus.

Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
Acked-by: Emma Anholt <emma@anholt.net>
Reviewed-by: Gurchetan Singh <gurchetan.singh.foss@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41644>
2026-05-22 07:09:49 +00:00
Valentine Burley
8cd6e3ac08 tu: Disable -Wmisleading-indentation when compiling with GCC
Based on the approach in e0eea5ea4e.

When a file is too large, -Wmisleading-indentantion will give the warning
below, that we can't prevent from a #pragma:

../src/freedreno/vulkan/tu_perfetto.cc: In function 'void setup_incremental_state(MesaRenderpassDataSource<TuRenderpassDataSource, TuRenderpassTraits>::TraceContext&, tu_device*)':
../src/freedreno/vulkan/tu_perfetto.cc:162: note: '-Wmisleading-indentation' is disabled from this point onwards, since column-tracking was disabled due to the size of the code/headers
  162 |    if (!state->was_cleared)
../src/freedreno/vulkan/tu_perfetto.cc:162: note: adding '-flarge-source-files' will allow for more column-tracking support, at the expense of compilation time and memory

See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89549 for details.

Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41644>
2026-05-22 07:09:49 +00:00
Rob Clark
952b984eca freedreno/common: Fix X2-90, add X2-85
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Rename X2-90 (4 slice), and add the real X2-85 (3 slice).

Signed-off-by: Rob Clark <rob.clark@oss.qualcomm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41693>
2026-05-21 21:23:24 +00:00
Valentine Burley
8cc3ca6231 turnip/ci: Add nightly Android CTS job
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
The job runs the following modules with ANGLE:
 - CtsGraphicsTestCases
 - CtsNativeHardwareTestCases
 - CtsSkQPTestCases

Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41440>
2026-05-21 06:21:02 +00:00
Collabora's Gfx CI Team
18ba81e5b6 Uprev Piglit to 6fd29fe44f8857b876a67bee962919635f22ecc8
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
11ce9eb56e...6fd29fe44f

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40989>
2026-05-20 21:37:44 +00:00
Konstantin Seurer
690d9b0d00 util/u_trace: Rework resource management
Stops allocating events in chunks. u_trace_event is allocated using a
linear allocator which has minimal overhead. Buffers for timestamps are
allocated using a custom allocator.

As a sideeffect, it is possible to deduplicate consecutive tracepoints.

Reviewed-by: Danylo Piliaiev <dpiliaiev@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41271>
2026-05-19 20:27:59 +00:00
Samuel Pitoiset
54b71e9e77 util: pass a struct to driParseConfigFiles()
It would be easier to add more functionalities like shader hashes etc.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41657>
2026-05-19 19:51:45 +00:00
Karol Herbst
4f5e2e34d3 ci: update traces due to ffma rework
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41165>
2026-05-19 18:13:42 +00:00
Karol Herbst
e9c1cce35f nir: remove ffma_old
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41165>
2026-05-19 18:13:42 +00:00
Karol Herbst
0082745b0a tu: use nir_op_ffma_weak in lowering
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41165>
2026-05-19 18:13:35 +00:00
Karol Herbst
acad18d97e ir3: port to nir_op_fmad
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41165>
2026-05-19 18:13:34 +00:00
Karol Herbst
a9b18f8607 nir: rename ffma to ffma_old
We'll get three new opcodes to properly model float multiply-add.
ffma_old is temporary and will be deleted at the end of this series.

Reviewed-by: Georg Lehmann <dadschoorse@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41165>
2026-05-19 18:13:27 +00:00
Eric Engestrom
dde7c7ed46 meson/freedreno: only build libfreedreno_common when requested
All users already `link_with` it, either directly or through
`idep_libfreedreno_common` (the latter should probably be preferred, but
I'll leave that to someone else).

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41617>
2026-05-18 19:09:03 +00:00
Gurchetan Singh
00261e5d00 freedreno: explicitly declare required depend_files, part 2
See "from freedreno_dev_info import *" statement.

Reviewed-by: Eric Engestrom <eric@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41518>
2026-05-18 18:30:45 +00:00
Gurchetan Singh
1fe5838568 freedreno: explicitly declare required depend_files, part 1
Fixes the following with meson2hermetic:

src/freedreno/registers/adreno/a6xx_perfcntrs.py/genrule.sbox.textproto

  File "<frozen runpy>", line 198, in _run_module_as_main
  File "<frozen runpy>", line 88, in _run_code
  File "gen_header.py", line 1220, in <module>
  File "gen_header.py", line 1216, in main
  File "gen_header.py", line 1177, in dump_py_defines
  File "gen_header.py", line 688, in parse
  File "gen_header.py", line 680, in do_parse
  File "external/python/cpython3/Modules/pyexpat.c", line 471, in StartElement
  File "gen_header.py", line 732, in start_element
  File "gen_header.py", line 673, in do_parse
FileNotFoundError:
  [Errno 2] No such file or directory: './out/src/freedreno/registers/adreno/adreno_common.xml'

Soong/Bazel `genrules` run in a separate sandbox, and require that
all dependencies be explicitly declared.  It is necessary for
reproducible, hermetic and distributed builds.

Meson prefers explicit dependency declaration too, but does not
require it.  For example, if `adreno_common.xml` is modified, and
it is in `depend_files` for the `adreno_pm4.xml.h` custom_target,
meson knows to re-gen `adreno_pm4.xml.h` during incremental builds.

For freedreno, the custom targets in `src/freedreno/registers/*`
don't declare all XML dependencies that are actually used.

This patch fixes this.  The other option is workaround this in
meson2hermetic, but being more explicit conceptually more correct.

Reviewed-by: Eric Engestrom <eric@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41518>
2026-05-18 18:30:45 +00:00
Gurchetan Singh
1084ddd893 tu: kgsl: fix -Wgnu-alignof-expression warning with Clang
Fixes:

src/freedreno/vulkan/tu_knl_kgsl.cc:1455:16:
  error: 'alignof' applied to an expression is a GNU extension [-Werror,-Wgnu-alignof-expression]
  alignof(*objs), VK_SYSTEM_ALLOCATION_SCOPE_COMMAND);

Reviewed-by: Eric Engestrom <eric@igalia.com>
Reviewed-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41518>
2026-05-18 18:30:45 +00:00
Gurchetan Singh
f9a5524b3b tu: fix implicit fallthrough
Fixes:

src/freedreno/vulkan/tu_cmd_buffer.cc:2162:10:
  error: unannotated fall-through between switch labels [-Werror,-Wimplicit-fallthrough]

The other option is the [[fallthrough]] annotation.

Reviewed-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41518>
2026-05-18 18:30:45 +00:00
Gurchetan Singh
b0e480d428 tu: fix -Wmissing-prototypes errors
Fixes:

src/freedreno/vulkan/tu_shader.cc:134:1: error:
  no previous prototype for function 'tu_init_softfloat32'[-Werror,-Wmissing-prototypes]
  134 | tu_init_softfloat32(struct tu_device *dev)
      | ^

Reviewed-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41518>
2026-05-18 18:30:45 +00:00
Gurchetan Singh
dd47c7c061 freedreno: fix ignored qualifier
Fixes:

src/freedreno/common/freedreno_dev_info.h:516:1:
  error: 'const' type qualifier on return type has no effect [-Werror,-Wignored-qualifiers]
  516 | const struct fd_dev_info fd_dev_info(const struct fd_dev_id *id);
      | ^~~~~

Reviewed-by: Eric Engestrom <eric@igalia.com>
Reviewed-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41518>
2026-05-18 18:30:45 +00:00
Connor Abbott
4441ad835c tu: Zero out unused parts of descriptors
UBO and sampler descriptors are smaller than texture descriptors, but
the nature of Vulkan descriptor sets means we need to make them just as
big. Zero out the remaining dwords so that we don't get garbage that
trips up asserts in gfxrecon-replay.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41608>
2026-05-18 16:19:24 +00:00
Danylo Piliaiev
ebdcf84100 tu: Always lazy_init_vsc for tiler rendering
Apparently we emitted uninitialized values for VSC in tu6_emit_tile_select
when HW binning wasn't used, which Adreno 630 doesn't like and hangs.

Instead of adding even more conditions, just always init VSC state,
the rare cases where initializing it can be skipped - not worth
the complexity.

Fixes: 49191f46e6 ("tu/a6xx: Emit VSC addresses for each bin to restore after preemption")

Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41604>
2026-05-18 15:17:32 +00:00
Collabora's Gfx CI Team
054dd22eb6 Uprev ANGLE to 7772c5602d59140204494967ba8ebdf801180054
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
5e591d0365...7772c5602d

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40965>
2026-05-15 23:15:01 +02:00
Valentine Burley
6cf5da8dd3 ci/deqp: Rewrite headless Android WSI patch
Update the headless Android WSI patch to fix intermittent timeout issues. It
now uses an ImageReader listener to actively drain and instantly release frames
from the buffer queue. This acts as a "null compositor" that prevents buffer
starvation while maintaining stable GPU backpressure.

This fixes dEQP-VK.wsi.android.maintenance1.* in newer VKCTS versions and
resolves the race conditions that caused occasional teardown crashes.

Also rebase build-deqp-gl_Build-Don-t-build-Vulkan-utilities-for-GL-builds.patch
on top of the updated WSI patch.

Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41541>
2026-05-15 17:38:59 +00:00
Marek Olšák
3831935818 nir/opt_move_to_top: add an option to exclude moving at_offset/at_sample loads
This splits the nir_move_to_top_input_loads option into 2 options. The latter
option is mainly for at_offset/at_sample loads. Then it updates most places to
use only the first option.

The rationale is that moving at_sample loads makes Control (game) shaders
worse, as per the code comment.

Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41167>
2026-05-14 16:48:39 -04:00
Danylo Piliaiev
1323939f63 tu: Don't enable FDM when there is FDM attachment is UNUSED
Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41539>
2026-05-14 15:50:37 +00:00
Danylo Piliaiev
5529f15f31 tu: Disable concurrent binning by default due to perf regressions
Unfortunately we have to disable concurrent binning by default
because it hurts performance in a number of desktop games without
any case where we know it helps.

There are less vertex fetch resource available in BV compared to BR,
so when binning runs in BV, there are many vertices, and vertices are
attribute heavy - BV has much worse performance than BR, sometimes more
than 50% worse.

Even with worse performance it won't be bad if concurrent binning
actually overlapped with other workload in those cases, but in case of
desktop games - there is almost never a chance for overlap.
However it's impossible to statically find out if binning on BV would
be much slower than on BR, and we also cannot statically predict if
there is enough overlap (if any) to cover for the performance penalty.

Given the above, I don't see a way out but to make concurrent binning
opt in via `tu_allow_concurrent_binning` driconf toggle.

Still allow concurrent binning in CI to catch issues early.

Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41394>
2026-05-14 14:38:35 +02:00
Valentine Burley
215f12fa23 ci/deqp: Backport validation error fix
Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41574>
2026-05-14 10:04:51 +00:00
Emma Anholt
76c39acad7 ci: Update VK CTS to 1.4.5.3 with fixes.
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
I've pulled in a pile of changes to reduce the overhead (runtime and
memory) when sharding for deqp-runner, along with a bunch of fixes for
KHR_display testing that we recently enabled, plus a few others that
affect our drivers.

The big new set of failures looks like it's from more complete coverage of
blitting between formats.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41243>
2026-05-14 04:22:21 +00:00
Emma Anholt
294bb1449e tu/ci: Drop a750 VKCTS to 50% coverage.
We're regularly hitting 13 minutes of deqp-runner runtime on our jobs,
which is too long.  Once we uprev the CTS, one of them gets to 14 minutes
and triggered the existing job timeout.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41243>
2026-05-14 04:22:21 +00:00
Anna Maniscalco
47590e0d3e ir3: Skip preftech and and warmups for non bindless earlier
Previously, if only non bindless accesses where present, we would end up
emitting an empty preamble.

Also avoid emitting non binless textures.

Reviewed-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40309>
2026-05-13 21:21:11 +00:00
Job Noorman
32a817fe75 freedreno/computerator: fix UAV view size
The user supplied buffer size is in units of words, not bytes.

Signed-off-by: Job Noorman <jnoorman@igalia.com>
Fixes: 469a19f66b ("freedreno/computerator: gen8 support")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41526>
2026-05-13 19:41:48 +00:00
Job Noorman
d1ab6937bc ir3: allow (ss) on all cat7 instructions
They all support it, not just alias.

Totals from 1034 (0.59% of 176266) affected shaders:
Instrs: 1191237 -> 1187463 (-0.32%); split: -0.32%, +0.00%
CodeSize: 1967434 -> 1957658 (-0.50%)
NOPs: 357507 -> 353733 (-1.06%); split: -1.07%, +0.01%
(ss)-stall: 162617 -> 162616 (-0.00%)
(sy)-stall: 701381 -> 701897 (+0.07%); split: -0.00%, +0.07%
Cat0: 391915 -> 388141 (-0.96%); split: -0.98%, +0.01%

Signed-off-by: Job Noorman <jnoorman@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41536>
2026-05-13 19:11:10 +00:00
Karol Herbst
47bde74e91 ci: update OpenCL 3.1 piglit fails
Piglit does enforce the pre 3.1 behavior of clSetKernelArg

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41358>
2026-05-13 15:21:40 +00:00
Danylo Piliaiev
9a247643eb tu: Don't disable UBWC for D24S8+USAGE_SAMPLED+customBorderColorWithoutFormat
Apparently, this is a major footgun since it is not uncommon for apps to
enable all the features exposed by a driver. Having UBWC disabled for
D24S8 can result in a major performance loss, and the reason can be hard
for devs to spot. This footgun is already known to have happened a few
times. Furthermore, disabling UBWC depending on a Vulkan feature being
requested broke D24S8 sharing via external memory when only one device
was created with customBorderColorWithoutFormat.

Fortunately, there is the depthStencilSwizzleOneSupport feature, which
was added after the above hardware deficiency was found and, when false,
forbids the problematic state combination.

To prevent the footgun described above, we now set
depthStencilSwizzleOneSupport to false by default. This allows UBWC to be
enabled for D24S8 in all cases while remaining conformant. We also have
the tu_enable_d24s8_border_color_workaround driconf option, which enables
the previous workaround for apps that don't know about
depthStencilSwizzleOneSupport, which is currently only the ANGLE
translation layer.

One caveat is that we cannot use the fast border color HW feature for
D24S8+USAGE_SAMPLED+VK_FORMAT_UNDEFINED, so a new driconf toggle is
added. enable_fast_border_color_for_undefined_formats is set for DXVK and
vkd3d-proton since they are known not to use border colors with D24S8.
Lacking fast border colors is a much smaller penalty than not having UBWC
for D24S8.

For some context also see: https://gitlab.khronos.org/Tracker/vk-gl-cts/-/issues/4346

This partially reverts 36916949.

Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41514>
2026-05-13 14:03:00 +00:00
Danylo Piliaiev
ea8de0742b tu/a8xx: Fix reading border_color from sampler memory
Fixes: 77e83d1449 ("tu: gen8 sampler support")

Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41514>
2026-05-13 14:03:00 +00:00
Danylo Piliaiev
98e30a598c tu: Fix BV/BR race in tu_clone_trace_range when waiting on barrier
Caused hangs in the following CTS test with CB enabled:
dEQP-VK.renderpasses.dynamic_rendering.primary_cmd_buff.random.seed1_geometry_tessellation_multiview

Fixes: 50cc9c723c ("tu/u_trace: Prevent cloning stale RB_DONE_TS results")

Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41490>
2026-05-12 09:01:58 +00:00
Valentine Burley
abcb0f6cf5 tu/autotune: Clear active_batches before history objects are freed
Fixes use-after-free errors during device destruction.

Fixes: 40ffc052af ("tu: Rewrite autotune in C++")
Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41476>
2026-05-12 08:37:31 +00:00
Job Noorman
d8e1409948 ir3: don't cache driver param instructions
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
We create driver param instructions once we encounter their first use
and cache them for further uses. This creates problems when the first
use occurs in a block that doesn't dominate all further uses. This was
hit in practice with a driver param that was used both in the preamble
and in the main shader.

Fix this by simply not caching driver params. Since they are simply movs
from const regs, ir3_cp or ir3_cse should clean up most cases of
multiple uses.

Signed-off-by: Job Noorman <jnoorman@igalia.com>
Fixes: 8b0b81339b ("freedreno/ir3: add NIR compiler")
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/work_items/15418
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41484>
2026-05-11 17:49:32 +00:00
Valentine Burley
2c4ed4f90d ci: Add missing rule for new trace replay config files
Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41443>
2026-05-11 08:02:05 +00:00
Emma Anholt
1538621f46 tu: Disable storage image support for depth/stencil.
Fixes failures in the new CTS tests like
dEQP-VK.image.store.without_format.2d.x8_d24_unorm_pack32.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41245>
2026-05-09 13:56:44 -07:00
Emma Anholt
65f5319522 tu: Report missing layout support for host_image_copy with unifiedLayouts.
Fixes dEQP-VK.image.host_image_copy.properties.properties in
vulkan-cts-1.4.5.3

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41245>
2026-05-09 13:56:44 -07:00
Emma Anholt
d369759972 tu/ci: Drop some old xfails that don't trigger any more.
Tested locally to make sure it wasn't just a fraction change.  The
"dynamic-" testcases don't even exist in the CTS any more.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41245>
2026-05-09 13:56:43 -07:00
Danylo Piliaiev
3e1f06b079 tu: Don't leak pre_chain.rp_trace, and correct u_trace_move
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
pre_chain.rp_trace usage relied on a bunch of bad assumptions
and together with u_trace_move didn't cause issues until
u_trace is started to be refactored. Fixing those bad assumptions
and correctly initializing and freeing pre_chain.rp_trace
also requires fixing u_trace_move at the same time.

u_trace_move fixes:
- If dst had trace chunks in it - we may have leaked them.
- The correct list move pattern is "list_replace -> list_inithead"
  not "list_replace -> list_delinit"

Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41390>
2026-05-09 10:31:41 +00:00
Ryan Houdek
103887766c turnip: Add an override to uncached memory type
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
When uncached memory type is used under emulation then most games have a
significant performance penalty due to accessing the buffer atomically.

Instead when this option is set, it will override uncached buffer
allocations to instead be cached+coherent if the host supports it. This
allows the atomic accesses to still be done but not have abysmal
performance.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41323>
2026-05-08 12:27:18 +00:00
Danylo Piliaiev
5f48aba9fa tu: Fix double free of timestamp_copy_data->trace
Instead of leaving timestamp_copy_data half-initialized in
copy_timestamp_cs_pool - always have it fully initialized and valid
state there.

Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41438>
2026-05-08 11:15:20 +00:00
Rob Clark
f694b2ac6f tu: Fix preemption latency selector values
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
I suspect this was unnoticed because write_preempt_counters_to_iova()
would overwrite the selectors.

Signed-off-by: Rob Clark <rob.clark@oss.qualcomm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41315>
2026-05-06 21:37:16 +00:00
Rob Clark
b430ca522e freedreno/ds: Split a6xx/a7xx counters out
Split gen specific derived counter setup to it's own files.

Signed-off-by: Rob Clark <rob.clark@oss.qualcomm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41315>
2026-05-06 21:37:16 +00:00
Rob Clark
5ca8c2107e freedreno/ds: Use gpu timestamps
This will simplify things for PERFCNTR_CONFIG, where we will be getting
GPU timestamps along with the sampled counter values.

Signed-off-by: Rob Clark <rob.clark@oss.qualcomm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41315>
2026-05-06 21:37:16 +00:00