From: Samuel Pitoiset Date: Mon, 21 Oct 2019 14:03:47 +0000 (+0200) Subject: radv: do not emit rbplus if attachments are undefined X-Git-Tag: upstream/19.3.0~664 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=956d825ed845dd239b7098eccd5f5a7b4fecad9c;p=platform%2Fupstream%2Fmesa.git radv: do not emit rbplus if attachments are undefined Fixes some crashes with dEQP-VK.geometry.layered.*.secondary_cmd_buffer on Raven and other chips that allow rbplus. This just prevents a crash and rbplus probaby needs more work. Cc: 19.2 Signed-off-by: Samuel Pitoiset Reviewed-by: Bas Nieuwenhuizen --- diff --git a/src/amd/vulkan/radv_cmd_buffer.c b/src/amd/vulkan/radv_cmd_buffer.c index 6a9002e..fb2490f 100644 --- a/src/amd/vulkan/radv_cmd_buffer.c +++ b/src/amd/vulkan/radv_cmd_buffer.c @@ -1001,6 +1001,9 @@ radv_emit_rbplus_state(struct radv_cmd_buffer *cmd_buffer) unsigned sx_blend_opt_epsilon = 0; unsigned sx_blend_opt_control = 0; + if (!cmd_buffer->state.attachments || !subpass) + return; + for (unsigned i = 0; i < subpass->color_count; ++i) { if (subpass->color_attachments[i].attachment == VK_ATTACHMENT_UNUSED) { sx_blend_opt_control |= S_02875C_MRT0_COLOR_OPT_DISABLE(1) << (i * 4);