mesa/src/broadcom
Jose Maria Casanova Crespo 0bcb82048c v3dv: avoid TFU reading unmapped pages beyond the end of the buffers
TFU units is doing a readahead of 64 bytes. This is causing invalid read
MMU errors that can be observed at the nightly full Vulkan runs on
Broadcom devices.

04:13:59.969: [   85.623205] v3d 1002000000.v3d: MMU error from client TLB (3) at 0x4869000, pte invalid
04:14:05.408: [   91.019321] v3d 1002000000.v3d: MMU error from client TLB (3) at 0x5209000, pte invalid
04:14:05.413: [   91.031662] v3d 1002000000.v3d: MMU error from client TLB (3) at 0x7521000, pte invalid

Although the log reports the TLB the real culprit is the TFU. A fix
to the kernel was submitted to fix AXI ID on V3D 4.2 and 7.1

So doing an over-allocation of 64-bytes at v3dv_AllocateMemory is
the simplest method to make these MMU errors itp disapear.

Running ./deqp-vk for an hour, we can see that ~%40 of allocations
would need an extra page (4096 bytes) to accomodate this 64 bytes
padding.

Fixes: ca330f7f04 ("v3dv: implement VK_EXT_memory_budget")
Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34475>
2025-04-15 00:17:11 +02:00
..
ci broadcom/ci: Skip test due to timeout 2025-04-11 19:17:17 +00:00
cle broadcom/cle: assert attribute has a value 2025-04-04 15:55:13 +00:00
clif broadcom: only support v42 and v71 2023-11-02 11:59:08 +01:00
common v3d: Move v3d_X(..) to src/broadcom/common 2024-12-02 14:13:24 +00:00
compiler broadcom/compiler: initialize register 2025-04-04 15:55:13 +00:00
drm-shim build: pass licensing information in SPDX form 2024-06-29 12:42:49 -07:00
ds broadcom: Add perfetto data source 2024-12-13 12:29:11 +00:00
perfcntrs broadcom: Add perfcount library 2024-12-02 14:13:24 +00:00
qpu broadcom: add missing opcodes for fmov on mul alu for V3D 7.x 2024-10-03 09:02:07 +00:00
simulator broadcom/simulator: Fix Indirect CSD jobs for V3D 7.1.6+ 2025-04-14 12:13:30 +00:00
vulkan v3dv: avoid TFU reading unmapped pages beyond the end of the buffers 2025-04-15 00:17:11 +02:00
.editorconfig
meson.build broadcom: Add perfetto data source 2024-12-13 12:29:11 +00:00