Bug 157051

Summary: Xgl flickers on intel graphics chips
Product: [openSUSE] SUSE Linux 10.1 Reporter: Matthias Hopf <mhopf>
Component: X.OrgAssignee: Matthias Hopf <mhopf>
Status: RESOLVED FIXED QA Contact: Stefan Dirsch <sndirsch>
Severity: Normal    
Priority: P5 - None CC: eich, sndirsch
Version: Beta 3   
Target Milestone: ---   
Hardware: Other   
OS: Other   
Whiteboard:
Found By: Other Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---
Attachments: Workaround for issue 1
Proposed Mesa patch for Issue 2
Workaround for compiz currently needed for using CopySubBuffer
Real fix for scissor issue

Description Matthias Hopf 2006-03-10 14:01:38 UTC
Xgl + compiz flicker a lot on intel graphics chips.

Patches pending.
Comment 1 Matthias Hopf 2006-03-13 16:59:32 UTC
Mostly fixed in stable now.
Comment 2 Matthias Hopf 2006-03-14 11:34:33 UTC
Two more issues remain:

1) On intel the graphics is only displayed correctly after the first CopyPixel() call.

2) We're still hitting a slow path, as CopyPixel() from the back buffer to the front buffer is not accelerated. Also a context switch is required.
Comment 3 Matthias Hopf 2006-03-14 15:11:45 UTC
Created attachment 72796 [details]
Workaround for issue 1

This is a workaround for issue 1, by specifying a scissor region on the first full screen update.
Comment 4 Matthias Hopf 2006-03-14 18:31:39 UTC
Submitted to stable.
Setting to normal now.
Comment 5 Matthias Hopf 2006-03-14 18:35:18 UTC
Created attachment 72841 [details]
Proposed Mesa patch for Issue 2

This patch is a proposed acceleration of a Mesa functionality important to Xgl (GLX_MESA_copy_sub_buffer).

From David:
This patch adds direct and indirect rendering support for GLX_MESA_copy_sub_buffer. Intel, r200 and r300 drivers are the only drivers I've implemented support for so far. I've only tried the intel implementation and that seems to be working OK.
Comment 6 Matthias Hopf 2006-03-14 18:37:27 UTC
Created attachment 72842 [details]
Workaround for compiz currently needed for using CopySubBuffer

From David:

Xgl works quite well with this patch on intel hardware. However, there's currently (at least on Mesa 6.4.2) some issues that causes the intel driver (possibly other drivers as well) to not render the first drawing operation done by Xgl's core context correctly and no operations done by the compositing manager context until CopyPixels is called.
Comment 7 Matthias Hopf 2006-03-15 16:59:38 UTC
Created attachment 73067 [details]
Real fix for scissor issue

This is the real fix for issue 1 from David. It should be applied to Mesa, and the workaround can be disabled after 10.1 has been released.
Comment 8 Stefan Dirsch 2006-03-19 09:03:25 UTC
Fixed.

Mesa.changes:
-------------------------------------------------------------------
Wed Mar 15 18:15:23 CET 2006 - mhopf@suse.de

- Fix for bug #157051, issue 1:
  On intel the graphics is only displayed correctly after a scissor region
  other than full screen is specified.
Comment 9 Matthias Hopf 2006-03-20 11:36:38 UTC
Issue 1 is fixed, but issue 2 is still open. However, implications of the Mesa patch are too large for 10.1, and we can assume then included for the next Mesa release.
Comment 10 Stefan Dirsch 2006-03-20 11:42:43 UTC
Sorry, I didn't read carefully. Feel free to reopen if you like.