From c56ecb68e75dedf0ca97dddf80fd1c318ab0986b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Fri, 29 Jul 2016 16:33:50 +0200 Subject: radeonsi: take scratch buffer and draw indirect memory usage into account MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Reviewed-by: Nicolai Hähnle --- src/gallium/drivers/radeonsi/si_state_draw.c | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'src/gallium/drivers/radeonsi/si_state_draw.c') diff --git a/src/gallium/drivers/radeonsi/si_state_draw.c b/src/gallium/drivers/radeonsi/si_state_draw.c index 30b644e..e4af4c7 100644 --- a/src/gallium/drivers/radeonsi/si_state_draw.c +++ b/src/gallium/drivers/radeonsi/si_state_draw.c @@ -989,6 +989,12 @@ void si_draw_vbo(struct pipe_context *ctx, const struct pipe_draw_info *info) if (sctx->b.flags) si_mark_atom_dirty(sctx, sctx->atoms.s.cache_flush); + /* Add buffer sizes for memory checking in need_cs_space. */ + if (sctx->emit_scratch_reloc && sctx->scratch_buffer) + r600_context_add_resource_size(ctx, &sctx->scratch_buffer->b.b); + if (info->indirect) + r600_context_add_resource_size(ctx, info->indirect); + si_need_cs_space(sctx); /* Emit states. */ -- cgit v1.1