(Needs radeon-rewrite) 3D stuff breaks with Compiz: Redirected Direct Rendering is needed in DRI
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
X.Org X server |
Fix Released
|
High
|
|||
xf86-video-ati |
Invalid
|
Undecided
|
Unassigned | ||
xf86-video-intel |
Invalid
|
Undecided
|
Unassigned | ||
xorg-server (Ubuntu) |
Fix Released
|
Wishlist
|
Unassigned | ||
xserver-xorg-video-ati (Ubuntu) |
Fix Released
|
High
|
Unassigned | ||
xserver-xorg-video-intel (Ubuntu) |
Fix Released
|
Medium
|
Unassigned | ||
xserver-xorg-video-nouveau (Ubuntu) |
Won't Fix
|
Wishlist
|
Unassigned |
Bug Description
If I run glxgears or anything that uses 3D while running Compiz, it's pretty obvious that the graphics hardware is just rendering straight on top of the screen rather than to a window.
In windowed mode, the rendering stays always on top, and moving a window causes a stale rendering to be left behind.
In fullscreen mode, windows underneath cause a flickering effect.
This is on R350/radeon hardware.
ProblemType: Bug
Architecture: i386
Date: Tue Mar 27 15:57:27 2007
DistroRelease: Ubuntu 7.04
Uname: Linux flash 2.6.20-13-generic #2 SMP Sun Mar 25 00:21:25 UTC 2007 i686 GNU/Linux
-----
Issues with Composite and 3D are widely reported and show themselves in a variety of contexts, but all are derived from the same root problem. 3D apps wish to do direct rendering in order to maximize performance, but Compiz wishes to retain control over how all windows are painted and doesn't work well when apps are rendering directly. Thus, what's needed is a method to redirect these directly rendering apps. Redirected direct rendering is nicely described in this blog post:
http://
The general effect is that when Compiz is active, running a 3D app like glxgears will show rendering errors when moving the glxgears window or putting it behind or over other windows. The standard workaround is to disable compiz while using the 3D programs and re-enable it when done.
This is a general problem in X's core architecture, and not an issue particular to a given driver. It's not exactly Compiz's fault either, and unfortunately it lacks a mechanism to hide or work around the problem. Solving it requires modification of a number of components including adding the TTM memory manager to libdrm, modifications of DRI in X, and on and on. It represents a significant amount of work to be done upstream and will probably take on the order of a year or two to get everything sorted out.
Changed in xserver-xorg-video-ati: | |
status: | New → Confirmed |
description: | updated |
Changed in xorg-server: | |
milestone: | none → later |
status: | Confirmed → Triaged |
Changed in xorg-server: | |
milestone: | later → intrepid-alpha-5 |
Changed in xorg-server: | |
status: | Unknown → Confirmed |
Changed in xorg-server: | |
status: | Confirmed → Fix Released |
Changed in xorg-server: | |
milestone: | intrepid-alpha-5 → later |
Changed in xorg-server: | |
status: | Triaged → Fix Released |
Changed in xserver-xorg-video-ati: | |
importance: | Undecided → High |
status: | New → Triaged |
Changed in xserver-xorg-video-intel: | |
status: | New → In Progress |
Changed in xserver-xorg-video-nouveau: | |
importance: | Undecided → High |
status: | New → Triaged |
Changed in xf86-video-ati: | |
status: | New → Invalid |
Changed in xserver-xorg-video-intel: | |
status: | New → Invalid |
tags: | added: 3d |
tags: | added: compiz |
summary: |
- 3D stuff breaks with Compiz: Redirected Direct Rendering is needed in - DRI + (Needs UXA) 3D stuff breaks with Compiz: Redirected Direct Rendering is + needed in DRI |
summary: |
- (Needs UXA) 3D stuff breaks with Compiz: Redirected Direct Rendering is - needed in DRI + (Needs UXA/DRI2) 3D stuff breaks with Compiz: Redirected Direct + Rendering is needed in DRI |
summary: |
- (Needs UXA/DRI2) 3D stuff breaks with Compiz: Redirected Direct + (Needs radeon-rewrite) 3D stuff breaks with Compiz: Redirected Direct Rendering is needed in DRI |
Changed in xserver-xorg-video-intel (Ubuntu): | |
importance: | Undecided → Medium |
Changed in xorg-server: | |
importance: | Unknown → High |
Changed in xorg-server: | |
importance: | High → Unknown |
Changed in xorg-server: | |
importance: | Unknown → High |
Created an attachment (id=7494)
Screenshot fo problem
This screenshot shows glxgears running behind Konsole with xcompmgr running,
but this happens with other composite managers as well and with other OpenGL
programs such as screensavers.