i965: Call brw_cache_flush_for_render in predraw_resolve_framebuffer
authorJason Ekstrand <jason.ekstrand@intel.com>
Thu, 14 Dec 2017 01:23:41 +0000 (17:23 -0800)
committerJason Ekstrand <jason.ekstrand@intel.com>
Wed, 17 Jan 2018 05:41:32 +0000 (21:41 -0800)
This makes sure we flush things out of other caches prior to using a
surface through the render cache.  Currently, this is a no-op because GL
won't let you bind anything other than a color surface as color so it
should never end up in the depth cache.  However, this does complete the
flush/add_bo pair for regular drawing which will be required for the
next commit.

Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Cc: "17.3" <mesa-stable@lists.freedesktop.org>
src/mesa/drivers/dri/i965/brw_draw.c

index 7e29dcfd4e839b8056fa54c928ea0046fcebece8..1f86378f5eebfbd28786a58e2972c5287069e29e 100644 (file)
@@ -508,6 +508,8 @@ brw_predraw_resolve_framebuffer(struct brw_context *brw)
                                    irb->mt_layer, irb->layer_count,
                                    isl_format,
                                    ctx->Color.BlendEnabled & (1 << i));
+
+      brw_cache_flush_for_render(brw, irb->mt->bo);
    }
 }