radv: Set correct metadata size for GFX9+.
authorBas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Thu, 25 Jul 2019 14:53:34 +0000 (16:53 +0200)
committerBas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Thu, 25 Jul 2019 15:07:53 +0000 (17:07 +0200)
Without correct size, radeonsi assumes the metadata is incorrect,
which can and will cause issues.

Since the metadata is really incorrect without the size, let us
fix that.

Fixes: e43cc3e3afc "radv/gfx9: handle GFX9 opaque metadata"
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
src/amd/vulkan/radv_image.c

index d46946269e66d440021f169cfe79330d168fda36..f3237dd5985fc442845d6d06b4894f74ab24b698 100644 (file)
@@ -1039,7 +1039,8 @@ radv_query_opaque_metadata(struct radv_device *device,
                for (i = 0; i <= image->info.levels - 1; i++)
                        md->metadata[10+i] = image->planes[0].surface.u.legacy.level[i].offset >> 8;
                md->size_metadata = (11 + image->info.levels - 1) * 4;
-       }
+       } else
+               md->size_metadata = 10 * 4;
 }
 
 void