v3dv: fix incorrect image slice selection
authorIago Toral Quiroga <itoral@igalia.com>
Wed, 25 Mar 2020 07:23:45 +0000 (08:23 +0100)
committerMarge Bot <eric+marge@anholt.net>
Tue, 13 Oct 2020 21:21:28 +0000 (21:21 +0000)
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6766>

src/broadcom/vulkan/v3dv_meta_copy.c

index 6f83b07..79d71ac 100644 (file)
@@ -221,11 +221,10 @@ emit_rcl_prologue(struct v3dv_job *job,
       uint32_t clear_pad = 0;
       if (clear_info->image) {
          const struct v3dv_image *image = clear_info->image;
-         if (image->slices[clear_info->layer].tiling == VC5_TILING_UIF_NO_XOR ||
-             image->slices[clear_info->layer].tiling == VC5_TILING_UIF_XOR) {
-            const struct v3d_resource_slice *slice =
-               &image->slices[clear_info->level];
-
+         const struct v3d_resource_slice *slice =
+            &image->slices[clear_info->level];
+         if (slice->tiling == VC5_TILING_UIF_NO_XOR ||
+             slice->tiling == VC5_TILING_UIF_XOR) {
             int uif_block_height = v3d_utile_height(image->cpp) * 2;
 
             uint32_t implicit_padded_height =