Commit graph

207649 commits

Author SHA1 Message Date
Rhys Perry
7c6be36cf4 aco: don't emit waitcnts before subgroup-scope execution barriers
This delays the waitcnt for has_attr_ring_wait_bug by a few instructions.

fossil-db (gfx1201):
Totals from 9 (0.00% of 208640) affected shaders:
Instrs: 19352 -> 19506 (+0.80%)
CodeSize: 101180 -> 101716 (+0.53%)
Latency: 660221 -> 678782 (+2.81%); split: -0.00%, +2.81%
InvThroughput: 95106 -> 97398 (+2.41%)

fossil-db (navi33):
Totals from 58834 (28.20% of 208626) affected shaders:
Instrs: 22424304 -> 22424571 (+0.00%)
CodeSize: 110198112 -> 110199184 (+0.00%)
Latency: 115894319 -> 126491124 (+9.14%); split: -0.00%, +9.14%
InvThroughput: 19424631 -> 19754358 (+1.70%); split: -0.00%, +1.70%

I don't think the stats are very accurate. This seems to often move the
s_waitcnt down into a divergent branch, but the wait still happens later
if the branch isn't taken, so the wait is counted twice.

Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com>
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41364>
2026-06-10 12:13:18 +00:00
Rhys Perry
3676c3860e aco: only assume load/store with semantic_atomic is atomic
ACCESS_ATOMIC was added a while ago.

fossil-db (gfx1201):
Totals from 84 (0.04% of 208640) affected shaders:
Instrs: 74569 -> 74402 (-0.22%)
CodeSize: 379220 -> 378552 (-0.18%)
Latency: 589791 -> 575984 (-2.34%)
InvThroughput: 56042 -> 54921 (-2.00%)

fossil-db (navi33):
Totals from 79 (0.04% of 208626) affected shaders:
Instrs: 69170 -> 69015 (-0.22%)
CodeSize: 349580 -> 348928 (-0.19%)
Latency: 563270 -> 549156 (-2.51%)
InvThroughput: 61245 -> 59887 (-2.22%)

Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com>
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41364>
2026-06-10 12:13:18 +00:00
Rhys Perry
a0d5c117fc aco: optimize redundant s_wait_alu vm_vsrc(0) during waitcnt insertion
fossil-db (gfx1201):
Totals from 143 (0.07% of 208640) affected shaders:
Instrs: 104804 -> 104588 (-0.21%)
CodeSize: 543148 -> 542320 (-0.15%)
Latency: 751702 -> 751446 (-0.03%); split: -0.04%, +0.00%
InvThroughput: 78599 -> 78588 (-0.01%); split: -0.02%, +0.00%

fossil-db (navi33):
Totals from 170 (0.08% of 208626) affected shaders:
Instrs: 107230 -> 106983 (-0.23%)
CodeSize: 554952 -> 553940 (-0.18%)
Latency: 746901 -> 746628 (-0.04%); split: -0.04%, +0.00%
InvThroughput: 102412 -> 102390 (-0.02%)

Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com>
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41364>
2026-06-10 12:13:18 +00:00
Rhys Perry
650715b077 aco: fix printing of primitive exports
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com>
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41364>
2026-06-10 12:13:17 +00:00
Rhys Perry
c815c51dcb aco/waitcnt: always use uint32_t for event masks
This shouldn't fix anything, because event_vmem_bvh was never used here.

Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com>
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41364>
2026-06-10 12:13:17 +00:00
Rhys Perry
49fb361c0a aco: don't emit workgroup-scope p_barrier for single-wave workgroups
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com>
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41364>
2026-06-10 12:13:17 +00:00
Rhys Perry
e6703f8e68 aco: add cost estimation of s_barrier
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41364>
2026-06-10 12:13:17 +00:00
Christian Gmeiner
9a8ac361ff panvk: Advertise VK_GOOGLE_display_timing
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Signed-off-by: Christian Gmeiner <cgmeiner@igalia.com>
Reviewed-by: Christoph Pillmayer <christoph.pillmayer@arm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/42066>
2026-06-10 11:33:00 +00:00
Christian Gmeiner
9cecd0821b vulkan/wsi: Constify wsi_instance_supports_google_display_timing(..)
Signed-off-by: Christian Gmeiner <cgmeiner@igalia.com>
Reviewed-by: Christoph Pillmayer <christoph.pillmayer@arm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/42066>
2026-06-10 11:33:00 +00:00
Lionel Landwerlin
e8ab81cc3a brw: fix null render target decision
First, use 64bit values everywhere since shader_info::outputs_written
is a 64bit field.

Second, alpha to coverage should only be considered for draw buffer 0
as stated in the GL spec (quoting Version 4.6 (Core Profile), 17.3.1
Alpha To Coverage) :

   "All alpha values in this section refer only to the alpha component
    of the fragment shader output linked to color number zero, index
    zero (see section 15.2.3)."

Third, the write message setup in brw_compile_fs.cpp was not taking
into account alpha-to-coverage being disabled anymore.

Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Fixes: 294644643e ("brw: avoid requiring a valid render target for empty fragment shaders")
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/work_items/15625
Tested-by: Christoph Neuhauser <christoph.neuhauser@intel.com>
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/42115>
2026-06-10 11:08:47 +00:00
Lionel Landwerlin
d698cd7485 iris: only call brw_nir_fs_needs_null_rt() with no render targets
This helper was only meant to be called once the driver knows it
doesn't have any render target setup, to figure out whether an empty
one needs to be created.

Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Cc: mesa-stable
Tested-by: Christoph Neuhauser <christoph.neuhauser@intel.com>
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/42115>
2026-06-10 11:08:47 +00:00
David Rosca
1825627cf8 va: Set contiguous_planes for DMA-BUF imported surfaces
Set contiguous_planes if all planes share the same fd.
This makes vaDeriveImage work with DMA-BUF imported surfaces.

Reviewed-by: Boyuan Zhang <Boyuan.Zhang@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/42086>
2026-06-10 10:46:59 +00:00
Georg Lehmann
db382b3cae radeonsi: use exec_size from the aco prolog/epilog callback
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/42028>
2026-06-10 08:23:01 +00:00
Georg Lehmann
3bb9ad4d47 radeonsi: use ac_get_instr_prefetch_size
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/42028>
2026-06-10 08:23:01 +00:00
Georg Lehmann
4a3e38fd7c radv/gfx11+: program INST_PREF_SIZE for NGG and HS
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/42028>
2026-06-10 08:23:01 +00:00
Georg Lehmann
a23fc3f066 radv/gfx12: program SPI_SHADER_PGM_RSRC4_GS for seperately compiled gs
Cc: mesa-stable

Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/42028>
2026-06-10 08:23:01 +00:00
Georg Lehmann
22a8788dea aco: add exec_size to prolog/epilog callback
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/42028>
2026-06-10 08:23:01 +00:00
Georg Lehmann
9b0536da1f radv/gfx11+: program INST_PREF_SIZE for pixel shaders
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/42028>
2026-06-10 08:23:00 +00:00
Georg Lehmann
dd3c7756cc radv/gfx11+: program INST_PREF_SIZE for compute
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/42028>
2026-06-10 08:22:59 +00:00
Georg Lehmann
e1b649d333 radv: remove gfx6 code from ngg emission
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/42028>
2026-06-10 08:22:59 +00:00
Georg Lehmann
ae9eb6298b amd/common: add helper for INST_PREF_SIZE
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/42028>
2026-06-10 08:22:59 +00:00
Georg Lehmann
f341fb0742 amd/common: don't pass radeon_info to ac_align_shader_binary_for_prefetch
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/42028>
2026-06-10 08:22:59 +00:00
Georg Lehmann
5c3a6c938b amd/gpu_info: precompute instruction prefetch distance
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/42028>
2026-06-10 08:22:58 +00:00
Samuel Pitoiset
47298397dc util/drirc: remove the driver option in drirc_validate
Each driver use its own drirc file now, so the option is useless.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41881>
2026-06-10 07:17:14 +00:00
Samuel Pitoiset
957eb2b5f0 radv,anv: remove useless includes for drirc stuff
No longer needed.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41881>
2026-06-10 07:17:14 +00:00
Thomas H.P. Andersen
c0531ece56 nvk: use the new generation script for drirc
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41881>
2026-06-10 07:17:14 +00:00
Samuel Pitoiset
4c66fc1383 venus: use drirc_gen
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41881>
2026-06-10 07:17:14 +00:00
Samuel Pitoiset
86406ca87d v3dv: use drirc_gen
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41881>
2026-06-10 07:17:14 +00:00
Samuel Pitoiset
8b422baac8 hk: use drirc_gen
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41881>
2026-06-10 07:17:14 +00:00
Samuel Pitoiset
309c2a213a panvk: use drirc_gen
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41881>
2026-06-10 07:17:14 +00:00
Samuel Pitoiset
281ae60b5e pvr: use drirc_gen
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41881>
2026-06-10 07:17:14 +00:00
Samuel Pitoiset
dbbd251b6f dzn: use drirc_gen
WSI options are already NULL, so they are never used.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41881>
2026-06-10 07:17:14 +00:00
Samuel Pitoiset
0dd9b61c80 util/drirc_gen: allow to override the defaults VK WSI common options
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41881>
2026-06-10 07:17:14 +00:00
Samuel Pitoiset
482e9f3002 util/drirc_gen: add heap_memory_percent to common VK options
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41881>
2026-06-10 07:17:14 +00:00
Samuel Pitoiset
34c343aad1 util/drirc_gen: prevent generating empty structs
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41881>
2026-06-10 07:17:14 +00:00
Samuel Pitoiset
59d6d5e45f util/drirc_gen: fix generating 64-bit driconf options
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41881>
2026-06-10 07:17:14 +00:00
Samuel Pitoiset
8e008649cb util/drirc_gen: change the driconf DTD to not require one app/engine entry
To be able to validate empty files for drivers that don't have any
driconf entries yet.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41881>
2026-06-10 07:17:14 +00:00
Job Noorman
1a9a0a15f7 ir3: lower undef booleans to zero
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
We are generally fine with undefs. However, booleans are only allowed to
contain 0/1 but are stored in 16b registers. Undefs may cause such
registers to be uninitialized and contain values other than 0/1. This
especially happens with undef booleans in phi srcs, which are explicitly
left uninitialized. In general, such non-0/1 values don't cause problems
because we mostly use booleans by comparing them to 0. However, they do
cause problems in special cases like `inot(x)` which we lower to `sub(1,
x)` which only works if true==1.

Fixes misrenderings in "Kingdoms of Amalur: Reckoning".

Totals from 12 (0.01% of 176258) affected shaders:
Instrs: 14590 -> 14615 (+0.17%)
CodeSize: 29796 -> 29808 (+0.04%)
NOPs: 3091 -> 3098 (+0.23%); split: -0.03%, +0.26%
MOVs: 735 -> 748 (+1.77%)
(sy)-stall: 4509 -> 4508 (-0.02%)
Cat0: 3471 -> 3483 (+0.35%); split: -0.03%, +0.37%
Cat1: 1257 -> 1270 (+1.03%)

Signed-off-by: Job Noorman <jnoorman@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/42051>
2026-06-10 06:05:05 +00:00
Job Noorman
46fce462fb nir/lower_undef_to_zero: add filter argument
Some backends may want to lower some, but not all, undefs.

For example, in ir3, we are generally fine with undefs. However,
booleans are only allowed to contain 0/1 but are stored 16b registers.
Undefs may cause such registers to be uninitialized and contain values
other than 0/1.

Signed-off-by: Job Noorman <jnoorman@igalia.com>
Reviewed-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/42051>
2026-06-10 06:05:05 +00:00
Paulo Zanoni
489aa1808f anv: give anv_ensure_fp64_shader() a chance to be called
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
In anv_shader_lower_nir() we call anv_ensure_fp64_shader() only if
device->fp64_nir is set, but the function that sets device->fp64_nir
is anv_ensure_fp64_shader()! That means the only way for
device->fp64_nir to be set is through blorp: if the app does not issue
the blorp shader that uses fp64, then we won't have it.

Change the check to be like the one we have in blorp_compile_fs_brw().

Fixes: 7d3b62e13d ("anv: only load fp64 software shader when needed")
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Signed-off-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/42100>
2026-06-09 23:29:41 +00:00
Christian Gmeiner
fbd2f140fe etnaviv: Drop unused num_loops shader stat
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
The field was never populated (initialized to 0 with a TODO) yet
printed in dump_shader_info(..) and etna_dump_shader(..), giving
the misleading impression that loop counts were tracked. Remove
the field and its consumers.

Signed-off-by: Christian Gmeiner <cgmeiner@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41560>
2026-06-09 22:23:04 +00:00
Dave Airlie
4ac11c9006 nak: block pipe_format from nak bindings.
This comes from the compiler bindings and lately we get

error[E0659]: `PIPE_FORMAT_R8_UINT` is ambiguous
    --> ../src/nouveau/compiler/nak/from_nir.rs:2193:13
     |
2193 |             PIPE_FORMAT_R8_UINT => MemType::U8,
     |             ^^^^^^^^^^^^^^^^^^^ ambiguous name
     |
     = note: ambiguous because of multiple glob imports of a name in the same module
note: `PIPE_FORMAT_R8_UINT` could refer to the constant imported here
    --> ../src/nouveau/compiler/nak/from_nir.rs:12:5
     |
12   | use nak_bindings::*;
     |     ^^^^^^^^^^^^^^^
     = help: consider adding an explicit import of `PIPE_FORMAT_R8_UINT` to disambiguate
note: `PIPE_FORMAT_R8_UINT` could also refer to the constant imported here
    --> ../src/nouveau/compiler/nak/from_nir.rs:14:5
     |
14   | use compiler::bindings::*;
     |     ^^^^^^^^^^^^^^^^^^^^^
     = help: consider adding an explicit import of `PIPE_FORMAT_R8_UINT` to disambiguate

Acked-by: Mel Henning <mhenning@darkrefraction.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/42109>
2026-06-09 22:06:55 +00:00
Lone_Wolf
f958ad1195 clc: fix build with LLVM23 (TargetRegistry::lookupTarget)
See d50631faad

Closes: https://gitlab.freedesktop.org/mesa/mesa/-/work_items/15471
Cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41558>
2026-06-09 21:17:21 +00:00
Rob Clark
1ab1799733 freedreno/perfetto: Use sequence-scoped clk
Now that the clock snapshots are serialized properly, switch to sequence
scoped clock id.

Signed-off-by: Rob Clark <rob.clark@oss.qualcomm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/42013>
2026-06-09 20:33:11 +00:00
Rob Clark
2a2199fb3e freedreno/perfetto: serialize clk snapshots
Move clk snapshots into same thread as render-stage traces.  This will
let us move to sequence scoped clock.

Signed-off-by: Rob Clark <rob.clark@oss.qualcomm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/42013>
2026-06-09 20:33:10 +00:00
Rob Clark
87b34e03ae freedreno/perfetto: Add non-draw stage
Make it easier to see the scope of non-draw passes, rather than only
showing individual compute/blit jobs.

Signed-off-by: Rob Clark <rob.clark@oss.qualcomm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/42013>
2026-06-09 20:33:10 +00:00
Rob Clark
b9e2da183e perfetto: Use BufferExhaustedPolicy::kStall
Renderpass traces on traceq are ok to block.  We'd prefer this over
dropping traces.

Signed-off-by: Rob Clark <rob.clark@oss.qualcomm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/42013>
2026-06-09 20:33:10 +00:00
Rob Clark
1b8a219c54 perfetto: Increase SMB size
Increase local perfetto shared memory buffer size, to reduce dropped
traces.

Signed-off-by: Rob Clark <rob.clark@oss.qualcomm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/42013>
2026-06-09 20:33:10 +00:00
Rob Clark
4adf158aef rusticl: Flush perfetto track events
Flush periodically in the single and worker thread.  And also before
thread exit.

Signed-off-by: Rob Clark <rob.clark@oss.qualcomm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/42013>
2026-06-09 20:33:10 +00:00
Rob Clark
f68e6f8848 util/queue: Flush perfetto before blocking
In particular if a queue is going to block, a trace may end with
buffered end traces before the queue gets it's next job.  So flush
before blocking.  (Also on the producer side, since it is easy.)

Signed-off-by: Rob Clark <rob.clark@oss.qualcomm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/42013>
2026-06-09 20:33:10 +00:00