Bug 6756

Summary: Radeon repeat picture acceleration broken.
Product: xorg Reporter: Eric Anholt <eric>
Component: Driver/RadeonAssignee: Xorg Project Team <xorg-team>
Status: RESOLVED FIXED QA Contact:
Severity: normal    
Priority: high CC: benh, fredrik, mmacleod, osos, otte
Version: git   
Hardware: x86 (IA32)   
OS: FreeBSD   
Whiteboard:
i915 platform: i915 features:
Attachments:
Description Flags
Always use normalized texture coordinates
none
Always use normalized texture coordinates, take two
none
Also attempt to catch cases where width and pitch are incompatible for repeat
none
Stick to denormalized coords for R100 none

Description Eric Anholt 2006-04-27 09:10:36 UTC
Radeon EXA's Composite acceleration is broken on my M6 for repeat pictures. 
This behavior was originally shown to me by a simple demo from frederikh.  It's
testable with "rendercheck -t repeat" from git.

This is with DRI, CVS from 2006-04-25 or later.  It's not clear how longstanding
this is.
Comment 1 Michel Dänzer 2006-07-17 07:54:41 UTC
Eric, was this due to the issues with new repeat types that you fixed in EXA
recently?
Comment 2 Eric Anholt 2006-07-17 08:12:47 UTC
No, the bug I fixed was with the extended repeat flags, while the demo and the
rendercheck test were only using RepeatNormal.
Comment 3 Michel Dänzer 2006-09-06 00:37:29 UTC
*** Bug 8134 has been marked as a duplicate of this bug. ***
Comment 4 Michel Dänzer 2006-09-08 04:04:07 UTC
Hmm. It looks like RadeonComposite() doesn't normalize the texture coordinates
for POT textures. Shouldn't it?
Comment 5 Michel Dänzer 2006-09-10 16:14:25 UTC
Created attachment 6900 [details] [review]
Always use normalized texture coordinates

Does this patch make a difference?
Comment 6 Michel Dänzer 2006-09-11 03:39:17 UTC
Created attachment 6909 [details] [review]
Always use normalized texture coordinates, take two

Missed a file...
Comment 7 Michel Dänzer 2006-09-12 00:08:55 UTC
*** Bug 7420 has been marked as a duplicate of this bug. ***
Comment 8 Benjamin Otte 2006-09-13 00:18:16 UTC
Just tested the patch (on R100 with EXA) and it doesn't fix the issue from bug
8134. It even makes some other operations have garbled graphics that weren't
before, though I didn't investigate further.
Comment 9 Michel Dänzer 2006-09-13 10:50:39 UTC
Created attachment 6944 [details] [review]
Also attempt to catch cases where width and pitch are incompatible for repeat

Can you try this one?
Comment 10 Benjamin Otte 2006-09-14 00:09:12 UTC
Looks better, but not perfect - I'm missing the icons for applications in the
Gnome Workspace Switcher.

And it's really slow (gnome-terminal and xchat both take 2-3 seconds to redraw).
Comment 11 Michel Dänzer 2006-09-14 00:50:29 UTC
Created attachment 6973 [details] [review]
Stick to denormalized coords for R100
Comment 12 Michel Dänzer 2006-09-14 00:54:55 UTC
(In reply to comment #10)
> Looks better, but not perfect - I'm missing the icons for applications in the
> Gnome Workspace Switcher.

Hmm, please try the new patch, which returns to using denormalized coords for
R100. I'm not seeing any issues with normalized coords with R200 though.

> And it's really slow (gnome-terminal and xchat both take 2-3 seconds to redraw).

I suspect that's due to migration of the window pixmap between system and video
memory due to the software fallback for the repeat that can't be accelerated.
The exa-damagetrack branch might help somewhat with that, or EXA could be
enhanced to handle this smarter than falling back to software directly.
Comment 13 Michel Dänzer 2006-10-23 08:41:13 UTC
Should be fixed in git, please reopen if you still see this issue with that.

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.