[Mesa-dev] [PATCH] i915: Fix gen2 texblend setup

Ville Syrjälä ville.syrjala at linux.intel.com
Tue Jun 17 05:33:29 PDT 2014


On Mon, Jun 16, 2014 at 12:22:43PM -0700, Ian Romanick wrote:
> Yeah, that looks right.
> 
> Reviewed-by: Ian Romanick <ian.d.romanick at intel.com>
> 
> Did you notice if other drivers have the same off-by-one issue?

I didn't spot similar problems elsewhere.

> 
> On 06/16/2014 11:22 AM, ville.syrjala at linux.intel.com wrote:
> > From: Ville Syrjälä <ville.syrjala at linux.intel.com>
> > 
> > Fix an off by one in the texture unit walk during texblend
> > setup on gen2. This caused the last enabled texunit to be
> > skipped resulting in totally messed up texturing.
> > 
> > This is a regression introduced here:
> >  commit 1ad443ecdd694dd9bf3c4a5050d749fb80db6fa2
> >  Author: Eric Anholt <eric at anholt.net>
> >  Date:   Wed Apr 23 15:35:27 2014 -0700
> > 
> >     i915: Redo texture unit walking on i830.
> > 
> > Cc: "10.2" <mesa-stable at lists.freedesktop.org>
> > Signed-off-by: Ville Syrjälä <ville.syrjala at linux.intel.com>
> > ---
> >  src/mesa/drivers/dri/i915/i830_texblend.c | 2 +-
> >  1 file changed, 1 insertion(+), 1 deletion(-)
> > 
> > diff --git a/src/mesa/drivers/dri/i915/i830_texblend.c b/src/mesa/drivers/dri/i915/i830_texblend.c
> > index 6e991c4..236be59 100644
> > --- a/src/mesa/drivers/dri/i915/i830_texblend.c
> > +++ b/src/mesa/drivers/dri/i915/i830_texblend.c
> > @@ -445,7 +445,7 @@ i830EmitTextureBlend(struct i830_context *i830)
> >     I830_ACTIVESTATE(i830, I830_UPLOAD_TEXBLEND_ALL, false);
> >  
> >     if (ctx->Texture._MaxEnabledTexImageUnit != -1) {
> > -      for (unit = 0; unit < ctx->Texture._MaxEnabledTexImageUnit; unit++)
> > +      for (unit = 0; unit <= ctx->Texture._MaxEnabledTexImageUnit; unit++)
> >           if (ctx->Texture.Unit[unit]._Current)
> >              emit_texblend(i830, unit, blendunit++,
> >                            unit == ctx->Texture._MaxEnabledTexImageUnit);
> > 

-- 
Ville Syrjälä
Intel OTC


More information about the mesa-dev mailing list