! Please note that this is a snapshot of our old Bugzilla server, which is read only since May 29, 2020. Please go to gitlab.xfce.org for our new server !
xfce4-display-settings crashes with multiple monitors on nVidia card
Status:
RESOLVED: FIXED
Severity:
critical
Product:
Xfce4-settings
Component:
Display Settings

Comments

Description Burfdl 2012-01-06 15:25:50 CET
Note: Couldn't find 4.8.3 in the version list. Rated 'critical' severity as my desktop is largely useless, please do correct as necessary.

Running xfce display settings either via the settings manager in xubuntu or from the command line crashes out with the error dialogue:


Unable to start the XFCE Display Settings


with no further information echoed to the command line.

This started after trying to get dual monitors working using the NVidia X Server Settings application to detect the second monitor and write the xorg.conf, as XFCE display settings did not recognise the extra monitor. NVidia X Server Settings produced the following xorg.conf:


# nvidia-settings: X configuration file generated by nvidia-settings
# nvidia-settings:  version 280.13  (buildd@rothera)  Thu Aug 11 17:28:49 UTC 2011


Section "ServerLayout"
    Identifier     "Layout0"
    Screen      0  "Screen0" 0 0
    Screen      1  "Screen1" RightOf "Screen0"
    InputDevice    "Keyboard0" "CoreKeyboard"
    InputDevice    "Mouse0" "CorePointer"
    Option         "Xinerama" "0"
EndSection

Section "Files"
EndSection

Section "InputDevice"

    # generated from default
    Identifier     "Mouse0"
    Driver         "mouse"
    Option         "Protocol" "auto"
    Option         "Device" "/dev/psaux"
    Option         "Emulate3Buttons" "no"
    Option         "ZAxisMapping" "4 5"
EndSection

Section "InputDevice"

    # generated from default
    Identifier     "Keyboard0"
    Driver         "kbd"
EndSection

Section "Monitor"

    # HorizSync source: edid, VertRefresh source: edid
    Identifier     "Monitor0"
    VendorName     "Unknown"
    ModelName      "LG Electronics L1717S"
    HorizSync       30.0 - 83.0
    VertRefresh     56.0 - 75.0
    Option         "DPMS"
EndSection

Section "Monitor"

    # HorizSync source: edid, VertRefresh source: edid
    Identifier     "Monitor1"
    VendorName     "Unknown"
    ModelName      "Acer V173"
    HorizSync       30.0 - 83.0
    VertRefresh     56.0 - 75.0
    Option         "DPMS"
EndSection

Section "Device"
    Identifier     "Device0"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    BoardName      "GeForce 9800 GT"
    BusID          "PCI:1:0:0"
    Screen          0
EndSection

Section "Device"
    Identifier     "Device1"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    BoardName      "GeForce 9800 GT"
    BusID          "PCI:1:0:0"
    Screen          1
EndSection

Section "Screen"
    Identifier     "Screen0"
    Device         "Device0"
    Monitor        "Monitor0"
    DefaultDepth    24
    Option         "TwinView" "0"
    Option         "TwinViewXineramaInfoOrder" "CRT-0"
    Option         "metamodes" "CRT-0: nvidia-auto-select +0+0"
    SubSection     "Display"
        Depth       24
    EndSubSection
EndSection

Section "Screen"
    Identifier     "Screen1"
    Device         "Device1"
    Monitor        "Monitor1"
    DefaultDepth    24
    Option         "TwinView" "0"
    Option         "TwinViewXineramaInfoOrder" "CRT-0"
    Option         "metamodes" "CRT-1: nvidia-auto-select +0+0"
    SubSection     "Display"
        Depth       24
    EndSubSection
EndSection


`lspci -v | grep nVidia` generates:


01:00.0 VGA compatible controller: nVidia Corporation G92 [GeForce 9800 GT] (rev a2) (prog-if 00 [VGA controller])


xrandr generates:


xrandr: Failed to get size of gamma for output default
Screen 0: minimum 320 x 240, current 1280 x 1024, maximum 1280 x 1024
default connected 1280x1024+0+0 0mm x 0mm
   1280x1024      50.0*    51.0  
   1280x960       52.0  
   1152x864       53.0     54.0     55.0     56.0  
   1024x768       57.0     58.0     59.0  
   960x600        60.0  
   960x540        61.0  
   840x525        62.0     63.0     64.0     65.0  
   832x624        66.0  
   800x600        67.0     68.0     69.0     70.0  
   720x450        71.0  
   700x525        72.0     73.0  
   680x384        74.0     75.0  
   640x480        76.0     77.0     78.0     79.0  
   512x384        80.0     81.0  
   400x300        82.0  
   320x240        83.0     84.0 

The second monitor now works, the mouse cursor moves between the monitors correctly, but right-click menus are now broken, the second monitor displays a copy of the desktop icons without wallpapers, and I can't move windows to the second monitor (nor launch them there).

I've been forwarded here after making a post to the xfce forum ( http://forum.xfce.org/viewtopic.php?pid=24381#p24381 ) by Nick.


xfce4-display-settings --version returns:


xfce4-display-settings 4.8.3 (Xfce 4.8)

Copyright (c) 2004-2011
	The Xfce development team. All rights reserved.

Please report bugs to <http://bugzilla.xfce.org/>.


Thanks
Comment 1 Lionel Le Folgoc 2012-01-06 16:36:24 CET
Hi,

Xfce4-display-settings checks the number of screens when starting. If it's greater than 1, it usually indicates that a proprietary driver is in use, i.e. fglrx or nvidia, and they have their own X server settings applications (and use different setups and terminology [screen vs. output], e.g. Xinerama uses several screens, while XRandR usually uses one screen with several outputs, afaik).

NVidia X Server Settings created a xorg.cong for you with two screens, and that is why xfce4-display-settings errors out, because it doesn't support that.


Now, you wrote that you did that because Xfce4-display-settings didn't recognize the extra monitor, so it could be useful to revert to your previous setup (no xorg.conf generated by nvidia settings), and run xrandr to check that your two outputs are detected.
Comment 2 Jérôme Guelfucci editbugs 2012-12-23 14:10:27 CET
Backtrace: https://bugzilla.redhat.com/attachment.cgi?id=533808
Comment 3 Jérôme Guelfucci editbugs 2012-12-23 14:10:49 CET
(In reply to comment #2)
> Backtrace: https://bugzilla.redhat.com/attachment.cgi?id=533808

Wrong bug report sorry.
Comment 4 Lionel Le Folgoc 2012-12-23 16:45:22 CET
Sorry, I forgot about this bug.
There was https://bugzilla.xfce.org/show_bug.cgi?id=9389, also nvidia related, fixed by http://git.xfce.org/xfce/xfce4-settings/commit/?id=430b46f6c5ed382fb1a2560efb6bdd291011b169 (freeing uninitialized structs). But without stacktrace, I can't tell for sure.
Comment 5 Simon Steinbeiss editbugs 2015-01-31 14:05:23 CET
We have improved support for Nvidia's proprietary drivers a lot meanwhile and xorg.conf is no longer used by most, so I don't think this bug is still around. Please feel free to comment or reopen the bugreport in case you can still reproduce it with a recent version of Xfce (ideally >=4.11).
Comment 6 Stirling Westrup 2016-09-06 01:39:03 CEST
I can firm that this is still a bug with

  xfce4-display-settings 4.12.0 (Xfce 4.12)

I ended up writing my own xorg.conf for my 2-head nvidia setup because xfce consistently got confused as to which was the primary and secondary monitors, but I found that I couldn't tweak things with xfce4-display-settings because it refused to run.
Comment 7 jbevren@gmail.com 2017-03-10 17:06:51 CET
Confirming Stirling's findings.  I'm running two cards to drive four displays:

jbevren@epicfail:~$ lspci |grep VGA
01:00.0 VGA compatible controller: NVIDIA Corporation GK106 [GeForce GTX 650 Ti] (rev a1)
02:00.0 VGA compatible controller: NVIDIA Corporation GF119 [GeForce GT 610] (rev a1)

jbevren@epicfail:~$ xrandr -v
xrandr program version       1.5.0
Server reports RandR version 1.5

jbevren@epicfail:~$ DISPLAY=:0.0 xrandr |grep connected
VGA-0 disconnected (normal left inverted right x axis y axis)
HDMI-0 disconnected (normal left inverted right x axis y axis)
DVI-D-0 connected 1920x1080+0+0 (normal left inverted right x axis y axis) 435mm x 239mm
DVI-D-1 connected 1920x1080+1920+0 (normal left inverted right x axis y axis) 435mm x 239mm

jbevren@epicfail:~$ DISPLAY=:0.1 xrandr |grep connected
DVI-I-0 disconnected primary (normal left inverted right x axis y axis)
DVI-I-1 disconnected (normal left inverted right x axis y axis)
DVI-I-2 connected 900x1440+900+0 right (normal left inverted right x axis y axis) 408mm x 255mm
DVI-I-3 connected 900x1440+0+0 right (normal left inverted right x axis y axis) 408mm x 255mm
HDMI-0 disconnected (normal left inverted right x axis y axis)

For some context, I use separate X screens to work around some badly written proprietary software that's hard to not have to use these days (cough flash cough).  Due to a bug the vendor's apparently not interested in fixing, having multiple screen widths causes issues with some functionality.

While it may be understandable that the display settings might not support such a configuration, it also works with some features of the display that are unrelated to randr, such as screensaver timeout.  I'm familiar with using xset to set the blackout timer, but perhaps the display settings application should either omit the randr tabs when finding an unsupported display configuration or at least provide some form of useful output indicating the display configuration is unsupported so that the user isn't left guessing and ultimately consuming developer time with help requests in fringe cases like mine. 

If anyone needs additional information I'm happy to add some. :-)

Bug #8309

Reported by:
Burfdl
Reported on: 2012-01-06
Last modified on: 2017-03-10

People

Assignee:
Jérôme Guelfucci
CC List:
7 users

Version

Version:
unspecified

Attachments

Additional information