Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

Background

I am driving a 3-screen setup with 2 1080p screens one above the other and a flanking 1680x1050 in portrait.

Problem

On boot, the portrait screen is not rendered at the correct height. Instead it displays an image 2432px tall. Moving the mouse to the edges of the screen causes it to scroll within this large image. This problem occurs both when the resolution of the screen is set to auto and when it is explicitly set to 1680x1050.

If after boot, I change the orientation to a different value hit apply, revert it back to rotate 90 and apply again the problem is resolved.

If the xorg.conf is resaved with the screen set up in landscape the computer loads appropriately.

Clues

When I click the Save to X Configuration File in the nvidia settings I get the following dialogs.

Multiple X screens are set to use absolute positioning. Though it is valid to do so, one or more X screens may be (or may become) unreachable due to overlapping and/or dead space. It is recommended to only use absolute positioning for the first X screen, and relative positioning for all subsequent X screens.

I am experiencing no dead space. I was unable to find a way to set the portrait monitor to relative positioning, though it was easy to set it up for the secondary 1080p screen (the top one).

Truncate the MetaMode list?

Long MetaMode strings (greater than 900 characters) are not supported by the current X server. Truncating the MetaMode list, so that the MetaMode string fits within 900 characters, will cause only the first 28 MetaModes to be written to the X configuration file.

NOTE: Writing all the MetaModes to the X Configuration file may result in parse errors and failing to start the X server.

My options are to truncate metamodes or write all metamodes. I choose to write all metamodes. This seems like the most likely cause of my problems, but I was unable to turn up any solution with google. The following is my xorg.conf

# nvidia-settings: X configuration file generated by nvidia-settings
# nvidia-settings:  version 319.60  (buildd@komainu)  Wed Oct  2 15:12:10 UTC 2013


Section "ServerLayout"

# Removed Option "Xinerama" "0"
Identifier     "Layout0"
Screen      0  "Screen0" 1050 1080
Screen      1  "Screen1" 1050 0
Screen      2  "Screen2" 0 480
InputDevice    "Keyboard0" "CoreKeyboard"
InputDevice    "Mouse0" "CorePointer"
Option         "Xinerama" "1"
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     "Monitor1"
VendorName     "Unknown"
ModelName      "Ancor Communications Inc ASUS VH236H"
HorizSync       30.0 - 85.0
VertRefresh     55.0 - 75.0
Option         "DPMS"
EndSection

Section "Monitor"

# HorizSync source: edid, VertRefresh source: edid
Identifier     "Monitor0"
VendorName     "Unknown"
ModelName      "Ancor Communications Inc ASUS VH236H"
HorizSync       30.0 - 85.0
VertRefresh     55.0 - 75.0
Option         "DPMS"
EndSection

Section "Monitor"
Identifier     "Monitor2"
VendorName     "Unknown"
ModelName      "Acer X193W+"
HorizSync       30.0 - 82.0
VertRefresh     56.0 - 76.0
EndSection

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

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

Section "Device"
Identifier     "Device2"
Driver         "nvidia"
VendorName     "NVIDIA Corporation"
BoardName      "GeForce GT 610"
BusID          "PCI:2:0:0"
EndSection

Section "Screen"
Identifier     "Screen1"
Device         "Device1"
Monitor        "Monitor1"
DefaultDepth    24
Option         "Stereo" "0"
Option         "metamodes" "DFP-3: nvidia-auto-select +0+0"
SubSection     "Display"
    Depth       24
EndSubSection
EndSection

Section "Screen"
Identifier     "Screen0"
Device         "Device0"
Monitor        "Monitor0"
DefaultDepth    24
Option         "Stereo" "0"
Option         "nvidiaXineramaInfoOrder" "DFP-0"
Option         "metamodes" "DFP-0: nvidia-auto-select +0+0; DFP-0: nvidia-auto-select +0+0; DFP-0: 1680x1050 +0+0; DFP-0: 1440x900 +0+0; DFP-0: 1280x1024 +0+0; DFP-0: 1280x1024_60 +0+0; DFP-0: 1152x864 +0+0; DFP-0: 1024x768 +0+0; DFP-0: 1024x768_70 +0+0; DFP-0: 1024x768_60 +0+0; DFP-0: 800x600 +0+0; DFP-0: 800x600_72 +0+0; DFP-0: 800x600_60 +0+0; DFP-0: 800x600_56 +0+0; DFP-0: 640x480 +0+0; DFP-0: 640x480_72 +0+0; DFP-0: 640x480_60 +0+0; DFP-0: nvidia-auto-select +0+0 {viewportin=1366x768, viewportout=1920x1079+0+0}; DFP-0: nvidia-auto-select +0+0 {viewportin=1280x800, viewportout=1728x1080+96+0}; DFP-0: nvidia-auto-select +0+0 {viewportin=1280x720}"
SubSection     "Display"
    Depth       24
EndSubSection
EndSection

Section "Screen"

# Removed Option "metamodes" "nvidia-auto-select +0+0"
# Removed Option "metamodes" "nvidia-auto-select +0+0 {rotation=90}; 1440x900 +0+0 {rotation=90}; 1440x900_60 +0+0 {rotation=90}; 1280x1024 +0+0 {rotation=90}; 1280x1024_60 +0+0 {rotation=90}; 1280x960 +0+0 {rotation=90}; 1280x720 +0+0 {rotation=90}; 1152x864 +0+0 {rotation=90}; 1024x768 +0+0 {rotation=90}; 1024x768_70 +0+0 {rotation=90}; 1024x768_60 +0+0 {rotation=90}; 800x600 +0+0 {rotation=90}; 800x600_72 +0+0 {rotation=90}; 800x600_60 +0+0 {rotation=90}; 800x600_56 +0+0 {rotation=90}; 640x480 +0+0 {rotation=90}; 640x480_72 +0+0 {rotation=90}; 640x480_60 +0+0 {rotation=90}; nvidia-auto-select +0+0 {rotation=90, viewportin=768x1366, viewportout=1680x944+0+53}; nvidia-auto-select +0+0 {rotation=90, viewportin=800x1280}; nvidia-auto-select +0+0 {rotation=90, viewportout=1680x945+0+52}"
# Removed Option "metamodes" "nvidia-auto-select +0+0; 1440x900 +0+0; 1440x900_60 +0+0; 1280x1024 +0+0; 1280x1024_60 +0+0; 1280x960 +0+0; 1280x720 +0+0; 1152x864 +0+0; 1024x768 +0+0; 1024x768_70 +0+0; 1024x768_60 +0+0; 800x600 +0+0; 800x600_72 +0+0; 800x600_60 +0+0; 800x600_56 +0+0; 640x480 +0+0; 640x480_72 +0+0; 640x480_60 +0+0; nvidia-auto-select +0+0 {viewportout=1680x945+0+52}"
# Removed Option "metamodes" "nvidia-auto-select +0+0 {rotation=270}; 1440x900 +0+0 {rotation=270}; 1440x900_60 +0+0 {rotation=270}; 1280x1024 +0+0 {rotation=270}; 1280x1024_60 +0+0 {rotation=270}; 1280x960 +0+0 {rotation=270}; 1280x720 +0+0 {rotation=270}; 1152x864 +0+0 {rotation=270}; 1024x768 +0+0 {rotation=270}; 1024x768_70 +0+0 {rotation=270}; 1024x768_60 +0+0 {rotation=270}; 800x600 +0+0 {rotation=270}; 800x600_72 +0+0 {rotation=270}; 800x600_60 +0+0 {rotation=270}; 800x600_56 +0+0 {rotation=270}; 640x480 +0+0 {rotation=270}; 640x480_72 +0+0 {rotation=270}; 640x480_60 +0+0 {rotation=270}; nvidia-auto-select +0+0 {rotation=270, viewportout=1680x945+0+52}; nvidia-auto-select +0+0 {rotation=270, viewportin=768x1366, viewportout=1680x944+0+53}; nvidia-auto-select +0+0 {rotation=270, viewportin=800x1280}"
# Removed Option "metamodes" "nvidia-auto-select +0+0 {rotation=90}; 1440x900 +0+0 {rotation=90}; 1440x900_60 +0+0 {rotation=90}; 1280x1024 +0+0 {rotation=90}; 1280x1024_60 +0+0 {rotation=90}; 1280x960 +0+0 {rotation=90}; 1280x720 +0+0 {rotation=90}; 1152x864 +0+0 {rotation=90}; 1024x768 +0+0 {rotation=90}; 1024x768_70 +0+0 {rotation=90}; 1024x768_60 +0+0 {rotation=90}; 800x600 +0+0 {rotation=90}; 800x600_72 +0+0 {rotation=90}; 800x600_60 +0+0 {rotation=90}; 800x600_56 +0+0 {rotation=90}; 640x480 +0+0 {rotation=90}; 640x480_72 +0+0 {rotation=90}; 640x480_60 +0+0 {rotation=90}; nvidia-auto-select +0+0 {rotation=90, viewportout=1680x945+0+52}; nvidia-auto-select +0+0 {rotation=90}; 1440x900 +0+0 {rotation=90}; 1440x900_60 +0+0 {rotation=90}; 1280x1024 +0+0 {rotation=90}; 1280x1024_60 +0+0 {rotation=90}; 1280x960 +0+0 {rotation=90}; 1280x720 +0+0 {rotation=90}; 1152x864 +0+0 {rotation=90}; 1024x768 +0+0 {rotation=90}; 1024x768_70 +0+0 {rotation=90}; 1024x768_60 +0+0 {rotation=90}; 800x600 +0+0 {rotation=90}; 800x600_72 +0+0 {rotation=90}; 800x600_60 +0+0 {rotation=90}; 800x600_56 +0+0 {rotation=90}; 640x480 +0+0 {rotation=90}; 640x480_72 +0+0 {rotation=90}; 640x480_60 +0+0 {rotation=90}; nvidia-auto-select +0+0 {rotation=90, viewportin=768x1366, viewportout=1680x944+0+53}; nvidia-auto-select +0+0 {rotation=90, viewportin=800x1280}; nvidia-auto-select +0+0 {rotation=90, viewportout=1680x945+0+52}"
Identifier     "Screen2"
Device         "Device2"
Monitor        "Monitor2"
DefaultDepth    24
Option         "Stereo" "0"
Option         "metamodes" "1680x1050 +0+0 {rotation=90}; nvidia-auto-select +0+0 {rotation=90}; 1440x900 +0+0 {rotation=90}; 1440x900_60 +0+0 {rotation=90}; 1280x1024 +0+0 {rotation=90}; 1280x1024_60 +0+0 {rotation=90}; 1280x960 +0+0 {rotation=90}; 1280x720 +0+0 {rotation=90}; 1152x864 +0+0 {rotation=90}; 1024x768 +0+0 {rotation=90}; 1024x768_70 +0+0 {rotation=90}; 1024x768_60 +0+0 {rotation=90}; 800x600 +0+0 {rotation=90}; 800x600_72 +0+0 {rotation=90}; 800x600_60 +0+0 {rotation=90}; 800x600_56 +0+0 {rotation=90}; 640x480 +0+0 {rotation=90}; 640x480_72 +0+0 {rotation=90}; 640x480_60 +0+0 {rotation=90}; nvidia-auto-select +0+0 {rotation=90, viewportout=1680x945+0+52}; nvidia-auto-select +0+0 {rotation=90}; 1440x900 +0+0 {rotation=90}; 1440x900_60 +0+0 {rotation=90}; 1280x1024 +0+0 {rotation=90}; 1280x1024_60 +0+0 {rotation=90}; 1280x960 +0+0 {rotation=90}; 1280x720 +0+0 {rotation=90}; 1152x864 +0+0 {rotation=90}; 1024x768 +0+0 {rotation=90}; 1024x768_70 +0+0 {rotation=90}; 1024x768_60 +0+0 {rotation=90}; 800x600 +0+0 {rotation=90}; 800x600_72 +0+0 {rotation=90}; 800x600_60 +0+0 {rotation=90}; 800x600_56 +0+0 {rotation=90}; 640x480 +0+0 {rotation=90}; 640x480_72 +0+0 {rotation=90}; 640x480_60 +0+0 {rotation=90}; nvidia-auto-select +0+0 {rotation=90, viewportout=1680x945+0+52}; 1440x900 +0+0 {rotation=90}; 1440x900_60 +0+0 {rotation=90}; 1280x1024 +0+0 {rotation=90}; 1280x1024_60 +0+0 {rotation=90}; 1280x960 +0+0 {rotation=90}; 1280x720 +0+0 {rotation=90}; 1152x864 +0+0 {rotation=90}; 1024x768 +0+0 {rotation=90}; 1024x768_70 +0+0 {rotation=90}; 1024x768_60 +0+0 {rotation=90}; 800x600 +0+0 {rotation=90}; 800x600_72 +0+0 {rotation=90}; 800x600_60 +0+0 {rotation=90}; 800x600_56 +0+0 {rotation=90}; 640x480 +0+0 {rotation=90}; 640x480_72 +0+0 {rotation=90}; 640x480_60 +0+0 {rotation=90}; nvidia-auto-select +0+0 {rotation=90, viewportin=768x1366, viewportout=1680x944+0+53}; nvidia-auto-select +0+0 {rotation=90, viewportin=800x1280}; nvidia-auto-select +0+0 {rotation=90, viewportout=1680x945+0+52}"
SubSection     "Display"
    Depth       24
EndSubSection
EndSection

Section "Extensions"
Option         "Composite" "Disable"
EndSection

Circumstances

  • I am using the nvidia proprietary driver.
  • This is a clean install of kubuntu 13.10
  • The 1080p screens are run off of a GTX 460 and the portrait screen is s run off of a GTX 610.
share|improve this question
    
that takes me back. I the offsets look wrong in your screens definition. does your system support randr? –  Frank Thomas Nov 14 '13 at 17:51
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Browse other questions tagged or ask your own question.