diff options
author | Rob Clark <[email protected]> | 2018-09-10 10:58:28 -0400 |
---|---|---|
committer | Rob Clark <[email protected]> | 2018-09-27 15:27:38 -0400 |
commit | ef6d15f8a86128251cb6320f7dcda0ee9e36d86a (patch) | |
tree | 90fe67f95debc37dac11b6bdd47a88c3079a5453 /src/gallium/drivers/freedreno/freedreno_state.c | |
parent | 5bb96bf73a1b2a9978c4cb766477e453610345f1 (diff) |
freedreno: fix corrupted fb state
In c3d9f29b we allowed ctx->batch to be null, and started tracking the
current framebuffer state in fd_context. But the existing logic in
fd_blitter_pipe_begin() would, if !ctx->batch, set null fb state to be
restored after blit. Which broke the world of deqp (and probably other
things)
Fixes: c3d9f29b781 freedreno: allocate ctx's batch on demand
Signed-off-by: Rob Clark <[email protected]>
Diffstat (limited to 'src/gallium/drivers/freedreno/freedreno_state.c')
-rw-r--r-- | src/gallium/drivers/freedreno/freedreno_state.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/gallium/drivers/freedreno/freedreno_state.c b/src/gallium/drivers/freedreno/freedreno_state.c index 3ce8b6ed9fc..a50ae383b23 100644 --- a/src/gallium/drivers/freedreno/freedreno_state.c +++ b/src/gallium/drivers/freedreno/freedreno_state.c @@ -211,6 +211,10 @@ fd_set_framebuffer_state(struct pipe_context *pctx, struct fd_context *ctx = fd_context(pctx); struct pipe_framebuffer_state *cso; + DBG("%ux%u, %u layers, %u samples", + framebuffer->width, framebuffer->height, + framebuffer->layers, framebuffer->samples); + if (ctx->screen->reorder) { struct fd_batch *old_batch = NULL; |