mesa/src/panfrost/lib
Lars-Ivar Hesselberg Simonsen 0a47a1cb6d panvk/v10+: Limit direct dispatch WLS allocation
During direct dispatch, we calculate the size of the WLS allocation
based on the number of WLS instances which is an unbounded calculation
on number of workgroups.

This leads to extreme allocation sizes and potentially
VK_ERROR_OUT_OF_DEVICE_MEMORY for direct dispatches with a high amount
of workgroups.

This change adds an upper bound to the number of WLS instances, using
the same value we assume for indirect dispatches.

Additionally, this commit fixes the WLS max instance calculation (which
should be per core).

Fixes: 5544d39f44 ("panvk: Add a CSF backend for panvk_queue/cmd_buffer")
Reviewed-by: Eric R. Smith <eric.smith@collabora.com>
Reviewed-by: John Anthony <john.anthony@arm.com>
Tested-by: Heiko Stuebner <heiko@sntech.de>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34979>
2025-05-22 15:39:10 +00:00
..
kmod pan/kmod: Add drmIoctl() wrapper pan_kmod_ioctl() with CPU trace 2025-04-15 10:37:39 +00:00
tests pan/layout: Split pan_image_layout 2025-05-21 15:02:17 +02:00
.gitignore
meson.build pan: Consolidate AFRC helpers in a single source file 2025-05-21 14:57:55 +02:00
pan_afbc.h pan: Draw a clear line between image layout, image and texture helpers 2025-05-21 14:58:16 +02:00
pan_afrc.h pan: Draw a clear line between image layout, image and texture helpers 2025-05-21 14:58:16 +02:00
pan_attributes.c pan: Use a consistent pan_ prefix across src/panfrost/* 2025-05-21 14:58:20 +02:00
pan_blend.c pan: Use a consistent pan_ prefix across src/panfrost/* 2025-05-21 14:58:20 +02:00
pan_blend.h pan/lib: Move pan_fixup_blend_type to pan_blend.c 2025-05-15 10:40:36 +02:00
pan_clear.c panfrost: pass blendable formats to pan_pack_color 2023-11-06 14:30:28 +01:00
pan_desc.c pan/layout: Split pan_image_layout 2025-05-21 15:02:17 +02:00
pan_desc.h panvk/v10+: Limit direct dispatch WLS allocation 2025-05-22 15:39:10 +00:00
pan_earlyzs.c pan/earlyzs: Default to FORCE_EARLY for ZS update on v11+ 2025-04-15 13:36:07 +02:00
pan_earlyzs.h pan/earlyzs: Fix the read-only ZS optimization 2025-04-14 15:20:06 +00:00
pan_encoder.h pan: Use a consistent pan_ prefix across src/panfrost/* 2025-05-21 14:58:20 +02:00
pan_format.c pan: Use a consistent pan_ prefix across src/panfrost/* 2025-05-21 14:58:20 +02:00
pan_format.h pan: Use a consistent pan_ prefix across src/panfrost/* 2025-05-21 14:58:20 +02:00
pan_image.h pan/texture: Don't mix image and buffer views 2025-05-21 15:03:37 +02:00
pan_indirect_dispatch.c pan: Use a consistent pan_ prefix across src/panfrost/* 2025-05-21 14:58:20 +02:00
pan_indirect_dispatch.h pan: Use a consistent pan_ prefix across src/panfrost/* 2025-05-21 14:58:20 +02:00
pan_jc.h pan: Use a consistent pan_ prefix across src/panfrost/* 2025-05-21 14:58:20 +02:00
pan_layout.c pan/layout: Split pan_image_layout 2025-05-21 15:02:17 +02:00
pan_layout.h pan/layout: Split pan_image_layout 2025-05-21 15:02:17 +02:00
pan_pool.h pan: Use a consistent pan_ prefix across src/panfrost/* 2025-05-21 14:58:20 +02:00
pan_props.c pan: Use a consistent pan_ prefix across src/panfrost/* 2025-05-21 14:58:20 +02:00
pan_props.h pan: Use a consistent pan_ prefix across src/panfrost/* 2025-05-21 14:58:20 +02:00
pan_samples.c pan: Use a consistent pan_ prefix across src/panfrost/* 2025-05-21 14:58:20 +02:00
pan_samples.h pan: Use a consistent pan_ prefix across src/panfrost/* 2025-05-21 14:58:20 +02:00
pan_scratch.c pan: Use a consistent pan_ prefix across src/panfrost/* 2025-05-21 14:58:20 +02:00
pan_shader.c pan: Use a consistent pan_ prefix across src/panfrost/* 2025-05-21 14:58:20 +02:00
pan_shader.h pan: Use a consistent pan_ prefix across src/panfrost/* 2025-05-21 14:58:20 +02:00
pan_texture.c pan/texture: Don't mix image and buffer views 2025-05-21 15:03:37 +02:00
pan_texture.h pan/texture: Don't mix image and buffer views 2025-05-21 15:03:37 +02:00
pan_tiler.c pan: Use a consistent pan_ prefix across src/panfrost/* 2025-05-21 14:58:20 +02:00
pan_util.c pan: Use a consistent pan_ prefix across src/panfrost/* 2025-05-21 14:58:20 +02:00
pan_util.h pan: Use a consistent pan_ prefix across src/panfrost/* 2025-05-21 14:58:20 +02:00
wrap.h panfrost: Kill the mali_ptr typedef 2025-01-07 11:10:55 +00:00