From bf17e4fe330379408ebaed7a2509cd603edd8917 Mon Sep 17 00:00:00 2001 From: Karmjit Mahil Date: Mon, 18 Sep 2023 15:36:29 +0100 Subject: [PATCH] pvr: Fix `for` loop itarator usage The `i` iteration variable was being used instead of `k` when appending new mappings, and getting the current source rect. dEQP test fixed: dEQP-VK.pipeline.monolithic.image.suballocation.sampling_type .combined.view_type.3d.format.*.count_1. .{3x3x3,5x5x5,...(odd dimensions)} Fixes: 060c3db4efd6 ("pvr: Complete pvr_generate_custom_mapping()") Reported-by: James Glanville Signed-off-by: Karmjit Mahil Reviewed-by: Frank Binns Part-of: --- src/imagination/vulkan/pvr_job_transfer.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/imagination/vulkan/pvr_job_transfer.c b/src/imagination/vulkan/pvr_job_transfer.c index 6bec19b79e9..87baef36fb9 100644 --- a/src/imagination/vulkan/pvr_job_transfer.c +++ b/src/imagination/vulkan/pvr_job_transfer.c @@ -5043,7 +5043,7 @@ pvr_generate_custom_mapping(uint32_t src_stride, struct pvr_transfer_wa_source *src = &pass->sources[j]; for (uint32_t k = 0; k < src->mapping_count; k++) { - VkRect2D *src_rect = &src->mappings[i].src_rect; + VkRect2D *src_rect = &src->mappings[k].src_rect; bool extend_height = pvr_extend_height(src_rect, src_height, @@ -5058,7 +5058,7 @@ pvr_generate_custom_mapping(uint32_t src_stride, new_src->mappings[new_src->mapping_count] = src->mappings[k]; new_src->src_offset = src->src_offset; - for (uint32_t l = i + 1; l < src->mapping_count; l++) + for (uint32_t l = k + 1; l < src->mapping_count; l++) src->mappings[l - 1] = src->mappings[l]; new_src->mapping_count++;