* The goal: Getting my spiffy new external monitor (Dell U2412M) working with my laptop (thinkpad t520 optimus/nvidia, running xubutu 11.10) and dock (thinkpad minidock series 3 plus). * The problem: On the t520 with optimus (switchable nvidia/onboard intel) the external graphics all run through nvidia. The external display ports (VGA built into the laptop, displayport on the dock) simply aren't there when the laptop is set to onboard intel graphics. (e.g. "sudo xrandr -q" only shows the built-in laptop screen.) When I install the nvidia driver, the laptop screen works fine and the nvidia-settings tool sees and correctly identifies the monitor (whether plugged into VGA or the displayport). However, when plugged into the minidock displayport, when I enable the external monitor in nvidia-settings and click "Apply" to test, the monitor still reports no displayport signal. When I save to xorg.conf (see xorg.conf below) and reboot, I can't get past the login splash screen because xserver segfaults (see logs below). When plugged into the laptop VGA port, I get almost the same results, except that the monitor reports getting a VGA signal, but the VGA signal only shows a blank black screen (powered on, but no image). After saving to xorg.conf (see xorg.conf below) and rebooting, similar xserver segfault (see logs below). This happens no matter what resolution I set the external monitor to. I haven't tried every single resolution combination (that would require in excess of 400 reboots), but I've tried a dozen or more. * Hardware Details Thinkpad t520 Optimus NVIDIA NVS 2400/intel BIOS set to Discrete, autodetect turned off Running xubuntu 11.10 Thinkpad minidock series 3 plus External Dell U2412M monitor plugged into minidock displayport * Attempt 1: From the command-line After doing "sudo apt-get install nvidia-current" Ran nvidia-settings, which displays a popup about "you don't appear to be using the nvidia drivers, run nvidia-xconfig as root to use them." Exited nvidia settings and did "sudo nvidia-xconfig" Then "sudo service lightdm restart" I am presented with the xubuntu login screen; when I enter the password: a) the laptop screen goes blank b) the laptop screen shows the boot terminal for a second c) the laptop screen shows the NVIDIA splash page graphic d) the laptop screen goes back to the login screen. * Attempt 2: try again via synaptic First remove the previous try: Did "sudo apt-get remove nvidia-current" and "sudo apt-get purge nvidia-current" Rebooted. X was working but at 640x480 resolution. Logged in, ran synaptic. In synaptic, installed nvidia-current. Rebooted. Got normal login and normal desktop and reasonably high resolution. Ran nvidia-settings from the GUI. This time nvidia-settings did NOT display the popup about "you don't appear to be using the nvidia drivers, run nvidia-xconfig as root to use them." The nvidia-settings dialog screen layout pane showed both the laptop screen and the Dell monitor (disabled) Selected the Dell monitor box in the screen layout. Changed the Configuration dropdown to twinview. Left the resolution at "auto", which resulted in 1920x1200. The built-in screen is at 1920x1080. Rebooted. Almost the same result as first time, I get the login screen, when I enter the password and hit enter: a) login screen goes blank, b) the left half of the NVIDIA splash image is displayed (as if the monitor were only showing half the image) c) back to the login page. * Attempt 3: try again with nvidia drivers downloaded from nvidia.com Following http://www.ubuntugeek.com/how-to-install-nvidia-295-40-drivers-in-ubuntu-12-0411-10-using-ppa.html This installs drivers from http://www.ubuntuupdates.org/ppa/ubuntu-x-swat sudo apt-add-repository ppa:ubuntu-x-swat/x-updates sudo apt-get update sudo apt-get install nvidia-current I meant purge nvidia-current first, but I added the repo as below, and then ubuntu software update wanted to instal the x-swat updates, so I just decided to go ahead and apply those. However, I appear to get the same behavior, e.g. get the login screen, login, get half the Nvidia splash page and then back to the login screen. I assume Xserver is segfaulting again, but I neglected to tail Xorg.0.log and watch exactly what was happening before blowing away xorg.conf. I'll have to try again. Okay, I read a comment somewhere about using arandr to set the screen size/layout. I ran arandr and arandr shows my laptop screen and the external screen. Just for the heck of it I tried reducing the external screen's resolution down to 800x600. No real change. Supposedly that setting should go away when I reboot, which makes sense since arandr just invokes xrandr, which just sets stuff in memory. Used the virtual terminal to remove /etc/X11/xorg.conf and rebooted... Plugged the external monitor into the VGA port to see if the new drivers work with VGA. Now my GUI login is all mangled. Now what... Rebooted a couple of times just to be sure. Maybe it's happening because the VGA is still plugged in. Let's try unplugging that and rebooting. Okay, weirdly enough that fixed the mangled GUI screen. * Attempt 4: Bumblebee and patched X Server This is probably my next step, since this guy claims to have made it work with a T520: http://judsonsnotes.com/notes/index.php?option=com_content&view=article&id=673:triple-head-monitors-on-thinkpad-t520&catid=37:tech-notes&Itemid=59 * From Xorg.0.log after attempt 1, installing via command-line apt-get ---------------------------------------------------------------------- [ 8279.130] (II) Open ACPI successful (/var/run/acpid.socket) [ 8279.212] (II) NVIDIA(0): Setting mode "nvidia-auto-select" [ 8280.029] (--) SynPS/2 Synaptics TouchPad: touchpad found [ 8286.001] Backtrace: [ 8286.001] 0: /usr/bin/X (xorg_backtrace+0x26) [0x460566] [ 8286.001] 1: /usr/bin/X (0x400000+0x64b7a) [0x464b7a] [ 8286.001] 2: /lib/x86_64-linux-gnu/libpthread.so.0 (0x7ffac4125000+0x10060) [0x7ffac4135060] [ 8286.001] 3: /usr/lib/libXfont.so.1 (FontFileListNextFontWithInfo+0x29) [0x7ffac3c81c89] [ 8286.001] 4: /usr/bin/X (doListFontsWithInfo+0x16d) [0x43061d] [ 8286.001] 5: /usr/bin/X (ProcessWorkQueue+0x21) [0x433d51] [ 8286.002] 6: /usr/bin/X (WaitForSomething+0x65) [0x45dec5] [ 8286.002] 7: /usr/bin/X (0x400000+0x2f912) [0x42f912] [ 8286.002] 8: /usr/bin/X (0x400000+0x232fe) [0x4232fe] [ 8286.002] 9: /lib/x86_64-linux-gnu/libc.so.6 (__libc_start_main+0xed) [0x7ffac305d30d] [ 8286.002] 10: /usr/bin/X (0x400000+0x235ed) [0x4235ed] [ 8286.002] Segmentation fault at address (nil) [ 8286.002] Caught signal 11 (Segmentation fault). Server aborting [ 8286.002] Please consult the The X.Org Foundation support at http://wiki.x.org for help. [ 8286.002] Please also check the log file at "/var/log/Xorg.0.log" for additional information. [ 8286.002] [ 8286.088] (II) Power Button: Close [ 8286.088] (II) UnloadModule: "evdev" [ 8286.088] (II) Unloading evdev [ 8286.152] (II) Video Bus: Close [ 8286.152] (II) UnloadModule: "evdev" [ 8286.152] (II) Unloading evdev [ 8286.220] (II) Sleep Button: Close [ 8286.220] (II) UnloadModule: "evdev" [ 8286.220] (II) Unloading evdev [ 8286.288] (II) PS/2+USB Mouse: Close [ 8286.288] (II) UnloadModule: "evdev" [ 8286.288] (II) Unloading evdev [ 8286.364] (II) CHESEN USB Keyboard: Close [ 8286.364] (II) UnloadModule: "evdev" [ 8286.364] (II) Unloading evdev [ 8286.428] (II) CHESEN USB Keyboard: Close [ 8286.428] (II) UnloadModule: "evdev" [ 8286.428] (II) Unloading evdev [ 8286.500] (II) AT Translated Set 2 keyboard: Close [ 8286.500] (II) UnloadModule: "evdev" [ 8286.500] (II) Unloading evdev [ 8286.672] (II) UnloadModule: "synaptics" [ 8286.673] (II) Unloading synaptics [ 8286.780] (II) TPPS/2 IBM TrackPoint: Close [ 8286.780] (II) UnloadModule: "evdev" [ 8286.780] (II) Unloading evdev [ 8286.912] (II) ThinkPad Extra Buttons: Close [ 8286.912] (II) UnloadModule: "evdev" [ 8286.912] (II) Unloading evdev [ 8287.910] ddxSigGiveUp: Closing log ---------------------------------------------------------------------- * xorg.conf (the one generated by "sudo nvidia-xconfig") from attempt 1, command-line attempt: ---------------------------------------------------------------------- # nvidia-xconfig: X configuration file generated by nvidia-xconfig # nvidia-xconfig: version 280.13 (buildmeister@swio-display-x86-rhel47-03.nvidia.com) Wed Jul 27 17:15:58 PDT 2011 Section "ServerLayout" Identifier "Layout0" Screen 0 "Screen0" InputDevice "Keyboard0" "CoreKeyboard" InputDevice "Mouse0" "CorePointer" EndSection Section "Files" FontPath "unix/:7100" 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" Identifier "Monitor0" VendorName "Unknown" ModelName "Unknown" HorizSync 28.0 - 33.0 VertRefresh 43.0 - 72.0 Option "DPMS" EndSection Section "Device" Identifier "Device0" Driver "nvidia" VendorName "NVIDIA Corporation" EndSection Section "Screen" Identifier "Screen0" Device "Device0" Monitor "Monitor0" DefaultDepth 24 SubSection "Display" Depth 24 EndSubSection EndSection ---------------------------------------------------------------------- * From Xorg.0.log after attempt 2, installing via synaptic: ---------------------------------------------------------------------- [ 128.555] (II) Open ACPI successful (/var/run/acpid.socket) [ 128.606] (II) NVIDIA(0): Setting mode [ 128.606] (II) NVIDIA(0): "DFP-0:nvidia-auto-select+0+0,DFP-2:nvidia-auto-select+1920+0" [ 129.468] (--) SynPS/2 Synaptics TouchPad: touchpad found [ 134.402] Backtrace: [ 134.402] 0: /usr/bin/X (xorg_backtrace+0x26) [0x460566] [ 134.402] 1: /usr/bin/X (0x400000+0x64b7a) [0x464b7a] [ 134.402] 2: /lib/x86_64-linux-gnu/libpthread.so.0 (0x7f504aa7c000+0x10060) [0x7f504aa8c060] [ 134.402] 3: /usr/bin/X (doListFontsWithInfo+0x10b) [0x4305bb] [ 134.402] 4: /usr/bin/X (ProcessWorkQueue+0x21) [0x433d51] [ 134.403] 5: /usr/bin/X (WaitForSomething+0x65) [0x45dec5] [ 134.403] 6: /usr/bin/X (0x400000+0x2f912) [0x42f912] [ 134.403] 7: /usr/bin/X (0x400000+0x232fe) [0x4232fe] [ 134.403] 8: /lib/x86_64-linux-gnu/libc.so.6 (__libc_start_main+0xed) [0x7f50499b430d] [ 134.403] 9: /usr/bin/X (0x400000+0x235ed) [0x4235ed] [ 134.403] Segmentation fault at address 0x10 [ 134.403] Caught signal 11 (Segmentation fault). Server aborting [ 134.403] Please consult the The X.Org Foundation support at http://wiki.x.org for help. [ 134.403] Please also check the log file at "/var/log/Xorg.0.log" for additional information. [ 134.403] [ 134.488] (II) Power Button: Close [ 134.488] (II) UnloadModule: "evdev" [ 134.488] (II) Unloading evdev [ 134.592] (II) Video Bus: Close [ 134.592] (II) UnloadModule: "evdev" [ 134.592] (II) Unloading evdev [ 134.656] (II) Sleep Button: Close [ 134.656] (II) UnloadModule: "evdev" [ 134.656] (II) Unloading evdev [ 134.720] (II) PS/2+USB Mouse: Close [ 134.720] (II) UnloadModule: "evdev" [ 134.720] (II) Unloading evdev [ 134.780] (II) CHESEN USB Keyboard: Close [ 134.780] (II) UnloadModule: "evdev" [ 134.780] (II) Unloading evdev [ 134.840] (II) CHESEN USB Keyboard: Close [ 134.840] (II) UnloadModule: "evdev" [ 134.840] (II) Unloading evdev [ 134.948] (II) AT Translated Set 2 keyboard: Close [ 134.948] (II) UnloadModule: "evdev" [ 134.948] (II) Unloading evdev [ 135.164] (II) UnloadModule: "synaptics" [ 135.164] (II) Unloading synaptics [ 135.292] (II) TPPS/2 IBM TrackPoint: Close [ 135.292] (II) UnloadModule: "evdev" [ 135.292] (II) Unloading evdev [ 135.420] (II) ThinkPad Extra Buttons: Close [ 135.420] (II) UnloadModule: "evdev" [ 135.420] (II) Unloading evdev [ 136.493] ddxSigGiveUp: Closing log ---------------------------------------------------------------------- * xorg.conf from attempt 2, synaptic attempt: ---------------------------------------------------------------------- # nvidia-settings: X configuration file generated by nvidia-settings # nvidia-settings: version 280.13 (buildd@yellow) Fri Aug 5 12:31:28 UTC 2011 Section "ServerLayout" Identifier "Layout0" Screen 0 "Screen0" 0 0 InputDevice "Keyboard0" "CoreKeyboard" InputDevice "Mouse0" "CorePointer" Option "Xinerama" "0" EndSection Section "Files" FontPath "unix/:7100" 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 "LEN" HorizSync 56.5 - 67.8 VertRefresh 40.0 - 60.0 Option "DPMS" EndSection Section "Device" Identifier "Device0" Driver "nvidia" VendorName "NVIDIA Corporation" BoardName "NVS 4200M" EndSection Section "Screen" Identifier "Screen0" Device "Device0" Monitor "Monitor0" DefaultDepth 24 Option "TwinView" "1" Option "metamodes" "DFP-0: nvidia-auto-select +0+0, DFP-2: nvidia-auto-select +1920+0" SubSection "Display" Depth 24 EndSubSection EndSection ----------------------------------------------------------------------