Red Hat Bugzilla – Bug 861505
Support Xinerama and Composite simultaneously
Last modified: 2014-06-03 05:17:16 EDT
Note: this is filed against RHEL 6, but it's really a request for RHEL 7
Description of problem:
The X server finally allows for Xinerama and Composite to be enabled at the same time, but trying to actually use Xinerama and Composite simultaneously is too buggy to be usable.
Users who need to configure multiple X screens (due to e.g. needing to drive multiple GPUs, with one or more displays per GPU) are therefore left with the following options:
a) Don't enable Xinerama: This allows Composite to work, and in theory, desktop environments with compositing window managers should be able to work; however, GNOME 3 seems to crash and go into fallback mode when running multiple X screens. Also, leaving Xinerama disabled prevents X clients from spanning multiple X screens or from being moved between screens, which may be necessary for some use cases.
b) Disable composite: This allows Xinerama to work, but prevents compositing window managers from running. GNOME 3 goes into fallback mode.
Version-Release number of selected component (if applicable):
I selected "xorg-x11-server", but the issues that prevent Xinerama and Composite from interacting well with each other probably span multiple software components.
X server and desktop environment:
GNOME Shell 3.4.1
GL driver info from `glxinfo`:
OpenGL vendor string: nouveau
OpenGL renderer string: Gallium 0.4 on NVC0
OpenGL version string: 2.1 Mesa 8.0.3
Linux ddadap-rhel7-test 3.3.0-0.20.el7.x86_64 #1 SMP Mon Jul 9 16:28:22 EDT 2012 x86_64 x86_64 x86_64 GNU/Linux
Attempt to use Xinerama and Composite at the same time, and run GNOME 3.
Steps to Reproduce:
1. Install two GPUs. I used recent NVIDIA GPUs with the Nouveau driver included with RHEL 7.
2. Configure separate X screens with Xinerama and start a GNOME 3 desktop session
3. Open a window, and attempt to move it between screens
The window becomes invisible when moved to another screen. The cursor is still visible. The window can be dragged to the other screen, and left there, where it will remain invisible. It can then be dragged back to the original screen, where it becomes visible again.
The window should be visible the whole time. This is only the first and most obvious bug I noticed; there will probably be more.
Do you use any specific configuration file for Xinerama?
The thing is that with the latest RHEL7 compose it works for me out-of-the-box, without the need of any explicit Xorg configuration. Once I boot up a machine with 2 GPUs, one monitor per each, Xorg will span the desktop for me automatically. It's not completely flawless yet but I can drag windows from one monitor to the other without any issues.
Can someone validate if this is completely fixed in RHEL 7.0?
Not sure if this will be of any help but:
I wasn't successful in setting up Xinerama explicitly in a config file but with no such file in place it worked fine today, again. I had 2 monitors connected to 2 NVIDIA GPUs (Quadro 2000 and NVS 300) and except for a rather poor performance on of the cards for some reason, I didn't notice any glitches when moving windows across the monitors.