If the image tiling is set to VK_IMAGE_TILING_LINEAR,
buffer_set_metadata will read an uninitialized radeon_bo_metadata.
Signed-off-by: Simon Ser <contact@emersion.fr>
Fixes:
d5fd8cd46eee ("radv: Allow non-dedicated linear images and buffer.")
Cc: mesa-stable
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7898>
{
struct radeon_bo_metadata metadata;
- if (memory->image) {
- if (memory->image->tiling != VK_IMAGE_TILING_LINEAR)
- radv_init_metadata(device, memory->image, &metadata);
+ if (memory->image && memory->image->tiling != VK_IMAGE_TILING_LINEAR) {
+ radv_init_metadata(device, memory->image, &metadata);
device->ws->buffer_set_metadata(memory->bo, &metadata);
}