[Mesa-dev] [PATCH] i965: Disallow PixelTransfer operations for tiled-memcpy TexImage/ReadPixels
Chris Wilson
chris at chris-wilson.co.uk
Fri Sep 4 12:12:47 PDT 2015
On Fri, Sep 04, 2015 at 11:59:01AM -0700, Kenneth Graunke wrote:
> On Friday, September 04, 2015 07:47:31 PM Chris Wilson wrote:
> > On Fri, Sep 04, 2015 at 11:34:29AM -0700, Kenneth Graunke wrote:
> > > On Friday, September 04, 2015 07:24:54 PM Chris Wilson wrote:
> > > > The tiled memcpy fast paths perform a simple blit (with only a couple of
> > > > trivial pixel conversion routines) and do not accommodate PixelTransfer
> > > > operations. Therefore if any are set, fallback to the regular routines.
> > > > Note that PixelTransfer only applies to TexImage and ReadPixels, not to
> > > > GetTexImage.
> > >
> > >
> > > Hmm, do they really apply to TexImage?
> > >
> > > From the OpenGL 3.0 spec, 3.7.3, Pixel Transfer Modes
> > > "Pixel transfer modes affect the operation of DrawPixels (section 3.7.4),
> > > ReadPixels (section 4.3.2), and CopyPixels (section 4.3.3) at the time
> > > when one of these commands is executed (which may differ from the time
> > > the command is issued)."
> >
> > In a much older version:
> >
> > glPixelTransfer sets pixel transfer modes that affect the operation of
> > subsequent commands:
> > glCopyPixels,
> > glCopyTexImage1D,
> > glCopyTexImage2D,
> > glCopyTexSubImage1D,
> > glCopyTexSubImage2D,
> > glCopyTexSubImage3D,
> > glDrawPixels,
> > glReadPixels,
> > glTexImage1D,
> > glTexImage2D,
> > glTexImage3D,
> > glTexSubImage1D,
> > glTexSubImage2D,
> > glTexSubImage3D
>
> Ah, that's from the man page. Ilia noted that the spec says "The
> selected groups are processed exactly as for DrawPixels", and it does
> talk about applying convolution...so I think you're right.
>
> Thanks for fixing this.
>
> Cc: mesa-stable at lists.freedesktop.org
> Reviewed-by: Kenneth Graunke <kenneth at whitecape.org>
Thank you both for the review,
To ssh://git.freedesktop.org/git/mesa/mesa
96ea166..099f5b3 master -> master
-Chris
--
Chris Wilson, Intel Open Source Technology Centre
More information about the mesa-dev
mailing list