From: Eric Anholt Date: Wed, 17 Apr 2013 20:58:00 +0000 (-0700) Subject: i915: Correctly set the OQ counter bits. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=eb062ab07f0bea3c7ce83274ed64ce9b5197c667;p=mesa.git i915: Correctly set the OQ counter bits. While we may provide the extension, we need to tell applications that they can't actually use it: An implementation can either set QUERY_COUNTER_BITS_ARB to the value 0, or to some number greater than or equal to n. If an implementation returns 0 for QUERY_COUNTER_BITS_ARB, then the occlusion queries will always return that zero samples passed the occlusion test, and so an application should not use occlusion queries on that implementation. --- diff --git a/src/mesa/drivers/dri/i915/i830_context.c b/src/mesa/drivers/dri/i915/i830_context.c index 524e7cba384..f4b35178493 100644 --- a/src/mesa/drivers/dri/i915/i830_context.c +++ b/src/mesa/drivers/dri/i915/i830_context.c @@ -113,6 +113,7 @@ i830CreateContext(int api, ctx->Const.MaxTextureMaxAnisotropy = 2.0; ctx->Const.MaxDrawBuffers = 1; + ctx->Const.QueryCounterBits.SamplesPassed = 0; _tnl_init_vertices(ctx, ctx->Const.MaxArrayLockSize + 12, 18 * sizeof(GLfloat)); diff --git a/src/mesa/drivers/dri/i915/i915_context.c b/src/mesa/drivers/dri/i915/i915_context.c index 133f339321f..46fc9664221 100644 --- a/src/mesa/drivers/dri/i915/i915_context.c +++ b/src/mesa/drivers/dri/i915/i915_context.c @@ -262,6 +262,7 @@ i915CreateContext(int api, fs_options->EmitNoIndirectTemp = true; ctx->Const.MaxDrawBuffers = 1; + ctx->Const.QueryCounterBits.SamplesPassed = 0; _tnl_init_vertices(ctx, ctx->Const.MaxArrayLockSize + 12, 36 * sizeof(GLfloat));