summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarek Olšák <[email protected]>2014-04-18 13:25:11 +0200
committerMarek Olšák <[email protected]>2014-04-18 13:33:57 +0200
commit352e06ddea1108bad1d2c6742fe3a67b2b1da5d9 (patch)
treef371c7902bccdb520c3af95cb02071a761baa22a
parent744d2a225d4012bb4dcd13e0cb6c2c834f481e26 (diff)
r600g,radeonsi: don't skip the context flush if a fence should be returned
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=77589
-rw-r--r--src/gallium/drivers/r600/r600_hw_context.c2
-rw-r--r--src/gallium/drivers/radeonsi/si_hw_context.c2
2 files changed, 2 insertions, 2 deletions
diff --git a/src/gallium/drivers/r600/r600_hw_context.c b/src/gallium/drivers/r600/r600_hw_context.c
index a860519d911..5ecc73daed1 100644
--- a/src/gallium/drivers/r600/r600_hw_context.c
+++ b/src/gallium/drivers/r600/r600_hw_context.c
@@ -236,7 +236,7 @@ void r600_context_gfx_flush(void *context, unsigned flags,
struct r600_context *ctx = context;
struct radeon_winsys_cs *cs = ctx->b.rings.gfx.cs;
- if (cs->cdw == ctx->b.initial_gfx_cs_size)
+ if (cs->cdw == ctx->b.initial_gfx_cs_size && !fence)
return;
ctx->b.rings.gfx.flushing = true;
diff --git a/src/gallium/drivers/radeonsi/si_hw_context.c b/src/gallium/drivers/radeonsi/si_hw_context.c
index 185041e9598..383157b7dd3 100644
--- a/src/gallium/drivers/radeonsi/si_hw_context.c
+++ b/src/gallium/drivers/radeonsi/si_hw_context.c
@@ -83,7 +83,7 @@ void si_context_gfx_flush(void *context, unsigned flags,
struct si_context *ctx = context;
struct radeon_winsys_cs *cs = ctx->b.rings.gfx.cs;
- if (cs->cdw == ctx->b.initial_gfx_cs_size)
+ if (cs->cdw == ctx->b.initial_gfx_cs_size && !fence)
return;
ctx->b.rings.gfx.flushing = true;