From 091df611387bcdbc534d6512a0f5d02afa575f67 Mon Sep 17 00:00:00 2001 From: Mary Guillemard Date: Fri, 2 Aug 2024 09:42:30 +0200 Subject: [PATCH] panvk: Skip blend descriptors when no fragment shader is present Fix "dEQP-VK.pipeline.*.empty_fs.*" tests crashes. Signed-off-by: Mary Guillemard Reviewed-by: Boris Brezillon Part-of: --- src/panfrost/vulkan/jm/panvk_vX_cmd_draw.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/panfrost/vulkan/jm/panvk_vX_cmd_draw.c b/src/panfrost/vulkan/jm/panvk_vX_cmd_draw.c index fa35474f462..a689fa91368 100644 --- a/src/panfrost/vulkan/jm/panvk_vX_cmd_draw.c +++ b/src/panfrost/vulkan/jm/panvk_vX_cmd_draw.c @@ -363,10 +363,12 @@ panvk_draw_prepare_fs_rsd(struct panvk_cmd_buffer *cmdbuf, mali_ptr fs_code = panvk_shader_get_dev_addr(fs); - panvk_per_arch(blend_emit_descs)( - dev, cb, cmdbuf->state.gfx.render.color_attachments.fmts, - cmdbuf->state.gfx.render.color_attachments.samples, fs_info, fs_code, bds, - &blend_reads_dest, &blend_shader_loads_blend_const); + if (fs_info != NULL) { + panvk_per_arch(blend_emit_descs)( + dev, cb, cmdbuf->state.gfx.render.color_attachments.fmts, + cmdbuf->state.gfx.render.color_attachments.samples, fs_info, fs_code, + bds, &blend_reads_dest, &blend_shader_loads_blend_const); + } pan_pack(rsd, RENDERER_STATE, cfg) { bool alpha_to_coverage = dyns->ms.alpha_to_coverage_enable;