mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-22 13:08:09 +02:00
When computing layout for large extents and array size, the computations can overflow the 32-bit variables holding these values. This can end up underreporting memory requirements for a given resource, making the application think that such a resource is allocatable. The size-holding variables in the fdl_layout struct have their type upgraded to uint64_t, as does the total size variable in tu_image. This avoids problems in corner-case tests in the Vulkan CTS, but this code should be improved further to avoid overflows and narrowing conversions. Fixes a quartet of tests under dEQP-VK.pipeline.monolithic.render_to_image.core.2d_array.huge.width_height_layers. Signed-off-by: Zan Dobersek <zdobersek@igalia.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28050> |
||
|---|---|---|
| .. | ||
| fd5_layout.c | ||
| fd5_layout_test.c | ||
| fd6_format_table.c | ||
| fd6_format_table.h | ||
| fd6_layout.c | ||
| fd6_layout_test.c | ||
| fd6_view.c | ||
| fd_layout_test.c | ||
| fd_layout_test.h | ||
| freedreno_layout.c | ||
| freedreno_layout.h | ||
| meson.build | ||