[PATCH] Avoid an unwanted pixmap migration in EXA when compositing trapezoids

Eric Anholt eric at anholt.net
Wed Aug 15 11:24:59 PDT 2007


On Wed, 2007-08-15 at 19:58 +0200, Fredrik Höglund wrote:
> Hi,
> 
> This patch solves the trapezoid migration problem Michel Dänzer described
> in a recent email on this mailing list.
> 
> miTrapezoids creates an alpha pixmap and initializes the contents using
> PolyFillRect, which causes the pixmap to be moved in for acceleration.
> The subsequent call(s) to RasterizeTrapezoid won't be accelerated by
> EXA, which forces the pixmap to be migrated out again.
> 
> This patch avoids the problem by wrapping Trapezoids in EXA, and using
> ExaCheckPolyFillRect to initialize the pixmap contents.
> 
> The code for exaTrapezoids and exaCreateAlphaPicture is copied from
> miTrapezoids and miCreateAlphaPicture. The only change is the call to
> ExaCheckPolyFillRect.
> 
> I'd like to commit this patch as a temporary solution for the 1.4 release.
> I expect it to be replaced later by the generic solution Michel is
> working on.

Looks good to me.

-- 
Eric Anholt                             anholt at FreeBSD.org
eric at anholt.net                         eric.anholt at intel.com

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 187 bytes
Desc: This is a digitally signed message part
URL: <http://lists.x.org/archives/xorg/attachments/20070815/37480add/attachment.pgp>


More information about the xorg mailing list