From: Chad Versace Date: Tue, 24 Dec 2013 01:49:21 +0000 (-0800) Subject: i965/gen6/blorp: Remove redundant HiZ workaround X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=90368875e733171350c64c8dda52f81bd0705dd0;p=mesa.git i965/gen6/blorp: Remove redundant HiZ workaround Commit 1a92881 added extra flushes to fix a HiZ hang in WebGL Google Maps. With the extra flushes emitted by the previous two patches, the flushes added by 1a92881 are redundant. Tested with the same criteria as in 1a92881: by zooming in and out continuously for 2 hours on Sandybridge Chrome OS (codename Stumpy) without a hang. CC: Kenneth Graunke CC: Stéphane Marchesin Reviewed-by: Paul Berry Signed-off-by: Chad Versace --- diff --git a/src/mesa/drivers/dri/i965/gen6_blorp.cpp b/src/mesa/drivers/dri/i965/gen6_blorp.cpp index 9db08401aa4..2e8e8ab4bbf 100644 --- a/src/mesa/drivers/dri/i965/gen6_blorp.cpp +++ b/src/mesa/drivers/dri/i965/gen6_blorp.cpp @@ -1015,19 +1015,6 @@ gen6_blorp_emit_primitive(struct brw_context *brw, brw->batch.need_workaround_flush = true; } -static void -gen6_emit_hiz_workaround(struct brw_context *brw, enum gen6_hiz_op hiz_op) -{ - /* This fixes a HiZ hang in WebGL Google Maps. A more minimal fix likely - * exists, but this gets the job done. - */ - if (hiz_op == GEN6_HIZ_OP_DEPTH_RESOLVE || - hiz_op == GEN6_HIZ_OP_HIZ_RESOLVE) { - intel_emit_post_sync_nonzero_flush(brw); - intel_emit_depth_stall_flushes(brw); - } -} - /** * \brief Execute a blit or render pass operation. * @@ -1053,7 +1040,6 @@ gen6_blorp_exec(struct brw_context *brw, /* Emit workaround flushes when we switch from drawing to blorping. */ brw->batch.need_workaround_flush = true; - gen6_emit_hiz_workaround(brw, params->hiz_op); gen6_emit_3dstate_multisample(brw, params->dst.num_samples); gen6_emit_3dstate_sample_mask(brw, params->dst.num_samples > 1 ?