[Mesa-dev] [PATCH] radv: Added framebuffer emission at subpass start

George Cave gcave at stablecoder.ca
Mon Nov 26 09:28:49 UTC 2018


Framebuffers only emit at point of draw call. As secondary command
buffers can be recorded without a given framebuffer, this is problematic
when the recorded buffer is used within a primary buffer's render/sub
pass meaning framebuffer state may never be emitted.

Framebuffer state will now also be emitted at the point of render/sub
pass being started. These are the points where the framebuffer should
always be defined.

Signed-off-by: George Cave <gcave at stablecoder.ca>
---
 src/amd/vulkan/radv_cmd_buffer.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/amd/vulkan/radv_cmd_buffer.c b/src/amd/vulkan/radv_cmd_buffer.c
index f13768b4ad..60c3a6da82 100644
--- a/src/amd/vulkan/radv_cmd_buffer.c
+++ b/src/amd/vulkan/radv_cmd_buffer.c
@@ -2304,7 +2304,7 @@ radv_cmd_buffer_set_subpass(struct radv_cmd_buffer *cmd_buffer,
 
 	cmd_buffer->state.subpass = subpass;
 
-	cmd_buffer->state.dirty |= RADV_CMD_DIRTY_FRAMEBUFFER;
+	radv_emit_framebuffer_state(cmd_buffer);
 }
 
 static VkResult
-- 
2.19.2




More information about the mesa-dev mailing list