unity does not start using xinerama and multi-monitor

Bug #894132 reported by Captain Chaos
32
This bug affects 7 people
Affects Status Importance Assigned to Milestone
Unity
Expired
Undecided
Unassigned
nvidia-graphics-drivers (Ubuntu)
Expired
Undecided
Unassigned
unity (Ubuntu)
Expired
Undecided
Unassigned

Bug Description

After upgrading my Natty 64-bit install to Oneiric, Unity won't start. I can log in and I see my desktop, but the desktop has a regular Nautilus menu bar at the top, and all the Unity controls are missing. There is no panel at the top of the screen or on the left, and therefore no way to start programs or even log out.

I have an NVidia Geforce 8800 GTX and it does not matter whether I use the proprietary driver or not.

Unity 2D does work, as does GNOME. GNOME Classic doesn't work either, presumable because gnome-panel crashes (I lodged a separate bug for that).

Tags: multimonitor
Revision history for this message
Didier Roche-Tolomelli (didrocks) wrote :

Hey Captain Chaos,

Can you please try to open a terminal in the unity-2d session and launch:
unity --reset
there and tell us if unity-3d starts? If so, then, if you logout and login back again to the unity 3d session, does it work?

Changed in unity (Ubuntu):
status: New → Incomplete
Revision history for this message
Captain Chaos (launchpad-chaos) wrote :

I tried it. unity --reset appears to kinda sorta work and start Unity 3D. However it is unusable, and logging in with it still doesn't work.

The first time I tried it Xinerama was still enabled. This resulted in three mirrored copies of Unity, one on each monitor (which all acted as if I clicked on them, any time I clicked on one of them). The desktop background image was shifted to the right, and the mouse didn't click where the mouse cursor was displayed, but one screen-width to the right, which was extremely confusing and unusable.

I then tried again with Xinerama disabled. This time it looked a bit better. However it only used my middle monitor. The left and right monitors just displayed a white screen with a menu bar on top (apparently a Nautilus menu bar) and no way to start programs. Again, unusable. Also because since the mouse cursor does not stop at the left edge of the middle screen it is *extremely* hard to get the Unity panel to pop up.

None of this made any difference to logging in to a Unity 3D session directly. That still didn't work, only displaying a menu bar (from Nautilus, presumably) at the top of every monitor with no way to start programs or even log out.

Man, multi monitor support gets worse with every release of Ubuntu. It has now gotten to the point where it is unusable on *every* combination of display driver or session. The only one that works at all (with all monitors) is GNOME Classic (No Effects), with Xinerama enabled, but even that doesn't work right. When I try to drag icons on the desktop, the icons are suddenly transposed a full screen width to the left of the mouse cursor!

What a terrible mess. Is Ubuntu even tested on multiple monitors at all? Here is the long list of failures of Ubuntu to allow me to use all the monitors on my system:

* I have to use the proprietary NVidia driver because the open source driver does not support multiple cards.
* I have to use Xinerama because otherwise there is no way of combining all screens into one desktop and be able to drag windows from one screen to another. (Previous versions did at least work without Xinerama, with each screen acting as a separate desktop, but that is no longer the case in this version.)
* When Xinerama is enabled the ONLY session that works somewhat correctly is GNOME Classic (No Effects). Every other one either will not start at all, or has horrible bugs with mouse positioning, window placement, unusable second and third screen, etc.
* And even that doesn't work fully correctly, as described above.

And this is not some exotic or ancient system. It's a modern PC with a 3 GHz quad core Intel processor, 8 GB of RAM and two NVidia Geforce 8800 GTX cards, two monitors on the first card and one on the second. Something which Ubuntu should comfortably support.

Changed in unity (Ubuntu):
status: Incomplete → New
summary: - unity does not start after upgrade to oneiric ocelot
+ unity does not start using xinerama and multi-monitor
Revision history for this message
Captain Chaos (launchpad-chaos) wrote :

Sorry about the rant. This is very frustrating to me.

Omer Akram (om26er)
tags: added: multimonitor
Revision history for this message
Omer Akram (om26er) wrote :

there must be some .crash file in you /var/crash directory with the compiz name in it, using that to report a crash would be helpful.

Changed in unity:
status: New → Incomplete
Changed in unity (Ubuntu):
status: New → Incomplete
Changed in unity:
status: Incomplete → New
Changed in unity (Ubuntu):
status: Incomplete → New
Revision history for this message
Captain Chaos (launchpad-chaos) wrote :

My /var/crash directory is empty. Is this directory cleaned on startup?

Revision history for this message
Bilal Akhtar (bilalakhtar) wrote :

No, its not cleaned on startup. It seems like there was no crash in the first place.

I'm sorry to hear your case Captain Chaos. But 90% of your issues are because of the NVIDIA proprietary driver. I have an Intel GPU and everything's fine for me.

Adding a bug task for nvidia-graphics-drivers

Revision history for this message
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in nvidia-graphics-drivers (Ubuntu):
status: New → Confirmed
Changed in unity (Ubuntu):
status: New → Confirmed
Revision history for this message
Andreas Grois (soulsource) wrote :

Hi!

I'm having the same (or a similar?) problem using a radeon HD6750 with the proprietary AMD drivers. When enabling xinerama, Unity2D is used, although 3D acceleration works...

Revision history for this message
Andreas Grois (soulsource) wrote :

At least for AMD the reason is obvious. My Xorg.0.log says that the composite extension is not loaded.

Revision history for this message
Captain Chaos (launchpad-chaos) wrote :

@bilalakhtar: soulsource just added his similar experience with AMD, so I don't think this is specific to NVidia.

I discovered that there is a tool which is supposed to test for Unity 3D support. I don't know if this is used to decide whether to fire up Unity 3D when you log in, but on my system it incorrectly reports that Unity 3D *is* supported, so that may explain why my system hangs when I try to log in with the default session. Here is the output of unity_support_test:

OpenGL vendor string: NVIDIA Corporation
OpenGL renderer string: GeForce 8800 GTX/PCI/SSE2
OpenGL version string: 3.3.0 NVIDIA 280.13

Not software rendered: yes
Not blacklisted: yes
GLX fbconfig: yes
GLX texture from pixmap: yes
GL npot or rect textures: yes
GL vertex program: yes
GL fragment program: yes
GL vertex buffer object: yes
GL framebuffer object: yes
GL version is 1.4+: yes

Unity 3D supported: yes

Revision history for this message
Captain Chaos (launchpad-chaos) wrote :

If Unity 3D does not support Xinerama, then perhaps unity_support_test should check for that?

Revision history for this message
Bilal Akhtar (bilalakhtar) wrote :

Can you check your /etc/xorg/xorg.conf if the Composite extension is listed there? Probably it is responsible for some of this?

Changed in unity:
status: New → Confirmed
Revision history for this message
Captain Chaos (launchpad-chaos) wrote :

I assume you mean /etc/X11/xorg.conf. It does not contain the Composite extension. Is that good or bad? I will attach the entire xorg.conf file.

Revision history for this message
Derek (sleepytonic) wrote :

Hi, I can confirm I have this problem using two AMD cards on a triple monitor setup.

Unity_2d session works and running 'unity --reset' does not render the 3d version of unity and the display results in broken windows. I've attached the log (run_unity_reset.log)

Some other info:

uname -a
Linux ringo 2.6.38-13-generic #55-Ubuntu SMP Tue Jan 24 15:34:24 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux

/usr/lib/nux/unity_support_test -p
OpenGL vendor string: ATI Technologies Inc.
OpenGL renderer string: ATI FirePro V4800 (FireGL)
OpenGL version string: 4.1.11272 Compatibility Profile Context FireGL

Not software rendered: yes
Not blacklisted: yes
GLX fbconfig: yes
GLX texture from pixmap: yes
GL npot or rect textures: yes
GL vertex program: yes
GL fragment program: yes
GL vertex buffer object: yes
GL framebuffer object: yes
GL version is 1.4+: yes

Unity supported: yes

lspci | grep VGA
03:00.0 VGA compatible controller: ATI Technologies Inc FirePro V4800
04:00.0 VGA compatible controller: ATI Technologies Inc FirePro V4800

 grep 'Output.*connected' /var/log/Xorg.0.log
[ 44.955] (II) fglrx(0): Output DFP1 connected
[ 44.955] (II) fglrx(0): Output DFP2 connected
[ 44.955] (II) fglrx(0): Output DFP3 disconnected
[ 44.955] (II) fglrx(0): Output CRT1 disconnected
[ 45.247] (II) fglrx(1): Output DFP1 disconnected
[ 45.247] (II) fglrx(1): Output DFP2 disconnected
[ 45.247] (II) fglrx(1): Output DFP3 connected
[ 45.247] (II) fglrx(1): Output CRT1 disconnected

Hope this helps.

Revision history for this message
Derek (sleepytonic) wrote :

I'm also attaching my Xorg.conf and output of Xorg.0.log.

Section "ServerLayout"
    Option "Xinerama"
 Identifier "amdcccle Layout"
 Screen 0 "amdcccle-Screen[3]-0" 0 0
 Screen "amdcccle-Screen[3]-1" 3200 0
EndSection

Section "Monitor"
 Identifier "0-DFP1"
 Option "VendorName" "ATI Proprietary Driver"
 Option "ModelName" "Generic Autodetecting Monitor"
 Option "DPMS" "true"
 Option "PreferredMode" "1600x1200"
 Option "TargetRefresh" "60"
 Option "Position" "0 0"
 Option "Rotate" "normal"
 Option "Disable" "false"
EndSection

Section "Monitor"
 Identifier "0-DFP2"
 Option "VendorName" "ATI Proprietary Driver"
 Option "ModelName" "Generic Autodetecting Monitor"
 Option "DPMS" "true"
 Option "PreferredMode" "1600x1200"
 Option "TargetRefresh" "60"
 Option "Position" "1600 0"
 Option "Rotate" "normal"
 Option "Disable" "false"
EndSection

Section "Monitor"
 Identifier "1-DFP3"
 Option "VendorName" "ATI Proprietary Driver"
 Option "ModelName" "Generic Autodetecting Monitor"
 Option "DPMS" "true"
 Option "PreferredMode" "1600x1200"
 Option "TargetRefresh" "60"
 Option "Position" "0 0"
 Option "Rotate" "normal"
 Option "Disable" "false"
EndSection

Section "Device"
 Identifier "amdcccle-Device[3]-0"
 Driver "fglrx"
 Option "Monitor-DFP1" "0-DFP1"
 Option "Monitor-DFP2" "0-DFP2"
 BusID "PCI:3:0:0"
EndSection

Section "Device"
 Identifier "amdcccle-Device[3]-1"
 Driver "fglrx"
 Option "Monitor-DFP3" "1-DFP3"
 BusID "PCI:4:0:0"
EndSection

Section "Screen"
 Identifier "amdcccle-Screen[3]-0"
 Device "amdcccle-Device[3]-0"
 DefaultDepth 24
 SubSection "Display"
  Viewport 0 0
  Virtual 3200 3200
  Depth 24
 EndSubSection
EndSection

Section "Screen"
 Identifier "amdcccle-Screen[3]-1"
 Device "amdcccle-Device[3]-1"
 DefaultDepth 24
 SubSection "Display"
 EndSubSection
EndSection

Revision history for this message
Omer Akram (om26er) wrote :

Thanks for the bug report. Is that still an issue for you Ubuntu 12.04 with all updates applied? Can you please test that and let us know?

Changed in unity:
status: Confirmed → Incomplete
Changed in nvidia-graphics-drivers (Ubuntu):
status: Confirmed → Incomplete
Changed in unity (Ubuntu):
status: Confirmed → Incomplete
Revision history for this message
Derek (sleepytonic) wrote :

Hi, I'm still running 11.04 and the result is the same. I plan on upgrading soon and will post my findings.

Revision history for this message
Derek (sleepytonic) wrote :

Hi, I've upgraded to 12.04 and the issue still exists. The ubuntu_2d session loads but not ubuntu. I'll dig in further...

Revision history for this message
Launchpad Janitor (janitor) wrote :

[Expired for unity (Ubuntu) because there has been no activity for 60 days.]

Changed in unity (Ubuntu):
status: Incomplete → Expired
Revision history for this message
Launchpad Janitor (janitor) wrote :

[Expired for nvidia-graphics-drivers (Ubuntu) because there has been no activity for 60 days.]

Changed in nvidia-graphics-drivers (Ubuntu):
status: Incomplete → Expired
Revision history for this message
Launchpad Janitor (janitor) wrote :

[Expired for Unity because there has been no activity for 60 days.]

Changed in unity:
status: Incomplete → Expired
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.