From a7b34ad8f20df3264b51299c36ecb8a4bc98e1d9 Mon Sep 17 00:00:00 2001 From: Jarred Davies Date: Mon, 6 Mar 2023 00:08:04 +0000 Subject: [PATCH] pvr: Don't allocate/upload 0 size coeff programs Fixes assert seen in dEQP-Vk.api.smoke.triangle Signed-off-by: Jarred Davies Reviewed-by: Frank Binns Part-of: --- src/imagination/vulkan/pvr_pipeline.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/imagination/vulkan/pvr_pipeline.c b/src/imagination/vulkan/pvr_pipeline.c index 89962d9..806249e 100644 --- a/src/imagination/vulkan/pvr_pipeline.c +++ b/src/imagination/vulkan/pvr_pipeline.c @@ -78,6 +78,14 @@ static VkResult pvr_pds_coeff_program_create_and_upload( /* Get the size of the program and then allocate that much memory. */ pvr_pds_coefficient_loading(&program, NULL, PDS_GENERATE_SIZES); + if (!program.code_size) { + pds_upload_out->pvr_bo = NULL; + pds_upload_out->code_size = 0; + pds_upload_out->data_size = 0; + + return VK_SUCCESS; + } + staging_buffer_size = (program.code_size + program.data_size) * sizeof(*staging_buffer); -- 2.7.4