radv: Reserve space in framebuffer emission.

In the execute secondary scenario nothing else does it for us.

Fixes: 203f60ebf2 ("radv: emit framebuffer state from primary if secondary doesn't inherit it")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22392>
This commit is contained in:
Bas Nieuwenhuizen 2022-12-05 00:51:19 +01:00 committed by Marge Bot
parent 0c8394908c
commit 4879f309a6

View file

@ -3402,6 +3402,9 @@ radv_emit_framebuffer_state(struct radv_cmd_buffer *cmd_buffer)
? S_028C70_FORMAT_GFX11(V_028C70_COLOR_INVALID)
: S_028C70_FORMAT_GFX6(V_028C70_COLOR_INVALID);
ASSERTED unsigned cdw_max =
radeon_check_space(cmd_buffer->device->ws, cmd_buffer->cs, 48 + MAX_RTS * 70);
for (i = 0; i < render->color_att_count; ++i) {
struct radv_image_view *iview = render->color_att[i].iview;
if (!iview) {
@ -3557,6 +3560,8 @@ radv_emit_framebuffer_state(struct radv_cmd_buffer *cmd_buffer)
}
}
assert(cmd_buffer->cs->cdw <= cdw_max);
cmd_buffer->state.dirty &= ~RADV_CMD_DIRTY_FRAMEBUFFER;
}