Whenever I enable the Nvidia drives (Nvidia-331) on my laptop, after I reboot and log in the screen goes black. I then tried to run purge nvidia-*
and revert back to Intel, but the screen remained black so I ended up reinstalling the OS.
I've tried enabling the nvidia drivers using the Mint Additional Drivers GUI and I've also tried installing them using ppa:xorg-edgers/ppa
. I have also added nomodeset
to my grub file. Everything leads to a black screen.
90% of the time I have my laptop plugged in to an outlet so I don't care about power efficiency and switching, all I want is Nvidia to work.
Some information that may be useful:
$ lspci -vnn | grep -i vga
00:02.0 VGA compatible controller [0300]: Intel Corporation 4th Gen Core Processor Integrated Graphics Controller [8086:0416] (rev 06) (prog-if 00 [VGA controller])
$ lshw -C video
*-display
description: 3D controller
product: GK107M [GeForce GT 750M]
vendor: NVIDIA Corporation
physical id: 0
bus info: pci@0000:01:00.0
version: a1
width: 64 bits
clock: 33MHz
capabilities: bus_master cap_list rom
configuration: driver=nouveau latency=0
resources: irq:45 memory:f6000000-f6ffffff memory:e0000000-efffffff memory:f0000000-f1ffffff ioport:e000(size=128) memory:f7000000-f707ffff
*-display
description: VGA compatible controller
product: 4th Gen Core Processor Integrated Graphics Controller
vendor: Intel Corporation
physical id: 2
bus info: pci@0000:00:02.0
version: 06
width: 64 bits
clock: 33MHz
capabilities: vga_controller bus_master cap_list rom
configuration: driver=i915 latency=0
resources: irq:46 memory:f7400000-f77fffff memory:d0000000-dfffffff ioport:f000(size=64)
$ grep -i chipset /var/log/Xorg.0.log
[ 6.085] (II) intel: Driver for Intel(R) Integrated Graphics Chipsets:
[ 6.086] (II) NOUVEAU driver for NVIDIA chipset families :
[ 6.086] (II) VESA: driver for VESA chipsets: vesa
[ 6.095] (--) intel(0): Integrated Graphics Chipset: Intel(R) HD Graphics 4600
[ 6.095] (--) NOUVEAU(G0): Chipset: "NVIDIA NVE7"
$ dpkg -l | grep nvidia
$ uname -a
Linux gulch 3.13.0-37-generic #64-Ubuntu SMP Mon Sep 22 21:28:38 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
$ cat /etc/X11/xorg.conf
cat: /etc/X11/xorg.conf: No such file or directory
There are no errors in the log file since this is a fresh installation. I will try again and post any errors I find from my phone.
Ok, some progress. I didn't realise I had to run sudo update-grub
after adding nomodeset
to the grub file. Now I can log in, but Cinnamon crashes immediately. I have run the following:
sudo apt-get update
sudo apt-get upgrade
sudo update-initramfs -u
and still Cinnamon crashes.
$ cat /var/log/Xorg.0.log | grep nvidia -i
[ 4.664] (II) Module glx: vendor="NVIDIA Corporation"
[ 4.664] (II) NVIDIA GLX Module 331.113 Mon Dec 1 20:24:35 PST 2014
[ 4.665] (==) Matched nvidia as autoconfigured driver 0
[ 4.665] (II) LoadModule: "nvidia"
[ 4.665] (II) Loading /usr/lib/x86_64-linux-gnu/xorg/extra-modules/nvidia_drv.so
[ 4.672] (II) Module nvidia: vendor="NVIDIA Corporation"
[ 4.680] (II) NVIDIA dlloader X Driver 331.113 Mon Dec 1 20:01:51 PST 2014
[ 4.680] (II) NVIDIA Unified Driver for all Supported NVIDIA GPUs
[ 4.680] (II) NOUVEAU driver for NVIDIA chipset families :
[ 4.746] (II) UnloadModule: "nvidia"
[ 4.746] (II) Unloading nvidia
[ 4.833] (EE) Failed to initialize GLX extension (Compatible NVIDIA X driver not found)
Why is it mentioning nouveau? It should be blacklisted.
$ cat /etc/modprobe.d/nvidia-graphics-drivers.conf
# This file was installed by nvidia-331
# Do not edit this file manually
blacklist nouveau
blacklist lbm-nouveau
blacklist nvidia-173
blacklist nvidia-96
blacklist nvidia-current-updates
blacklist nvidia-173-updates
blacklist nvidia-96-updates
blacklist nvidia-331-updates
alias nvidia nvidia_331
alias nvidia-uvm nvidia_331-uvm
alias nouveau off
alias lbm-nouveau off
I think I'm narrowing the problem down.
$ cat /var/log/Xorg.0.log | grep EE
(WW) warning, (EE) error, (NI) not implemented, (??) unknown.
[ 4.579] Initializing built-in extension MIT-SCREEN-SAVER
[ 4.684] (EE) [drm] KMS not enabled
[ 4.684] (EE) [drm] KMS not enabled
[ 4.686] (EE) open /dev/fb0: No such file or directory
[ 4.686] (EE) open /dev/fb0: No such file or directory
[ 4.686] (EE) Screen 0 deleted because of no matching config section.
[ 4.686] (EE) Screen 0 deleted because of no matching config section.
[ 4.833] (EE) Failed to initialize GLX extension (Compatible NVIDIA X driver not found)
$ glxinfo
name of display: :0
Xlib: extension "GLX" missing on display ":0".
Xlib: extension "GLX" missing on display ":0".
Xlib: extension "GLX" missing on display ":0".
Xlib: extension "GLX" missing on display ":0".
Xlib: extension "GLX" missing on display ":0".
Error: couldn't find RGB GLX visual or fbconfig
Xlib: extension "GLX" missing on display ":0".
Xlib: extension "GLX" missing on display ":0".
Xlib: extension "GLX" missing on display ":0".
Xlib: extension "GLX" missing on display ":0".
Error: couldn't find RGB GLX visual or fbconfig
Xlib: extension "GLX" missing on display ":0".
Xlib: extension "GLX" missing on display ":0".
Xlib: extension "GLX" missing on display ":0".
Xlib: extension "GLX" missing on display ":0".
Xlib: extension "GLX" missing on display ":0".
$ cat /etc/X11/xorg.conf.04052015
Section "ServerLayout"
Identifier "layout"
Screen 0 "nvidia"
Inactive "intel"
EndSection
Section "Device"
Identifier "intel"
Driver "modesetting"
BusID "PCI:0@0:2:0"
EndSection
Section "Screen"
Identifier "intel"
Device "intel"
EndSection
Section "Device"
Identifier "nvidia"
Driver "nvidia"
BusID "PCI:1@0:0:0"
Option "ConstrainCursor" "off"
EndSection
Section "Screen"
Identifier "nvidia"
Device "nvidia"
Option "AllowEmptyInitialConfiguration" "on"
Option "IgnoreDisplayDevices" "CRT"
EndSection
So Screen0 has no configuration, but is mentioned in xorg.conf? Am I on the right track here?
$ inxi -G
Graphics: Card: Intel 4th Gen Core Processor Integrated Graphics Controller
X.Org: 1.15.1 drivers: fbdev,vesa,intel,nouveau (unloaded: nvidia) Resolution: 1920x1080@0.0hz
GLX Renderer: N/A GLX Version: N/A
Why is it saying that nouveau is in use when it should be blacklisted? I'm so confused, would really appreciate some guidance here.
So I copied the /etc/X11/xorg.conf.04052015 file created by nvidia-331 and into xorg.conf since there was no existing xorg.conf file. After rebooting, nothing came up, just a black screen.
I only have one monitor, but there has been an additional monitor plugged into this laptop in the past (via the VGA port).
$ dpkg -l | grep nvidia
now gives
ii nvidia-331 331.113-0ubuntu0.0.4 amd64 NVIDIA binary driver - version 331.113
ii nvidia-331-uvm 331.113-0ubuntu0.0.4 amd64 NVIDIA Unified Memory kernel module
ii nvidia-libopencl1-331 331.113-0ubuntu0.0.4 amd64 NVIDIA OpenCL Driver and ICD Loader library
ii nvidia-opencl-icd-331 331.113-0ubuntu0.0.4 amd64 NVIDIA OpenCL ICD
ii nvidia-prime 0.6.2linuxmint1 amd64 Tools to enable NVIDIA's Prime
ii nvidia-settings 331.20-0ubuntu8 amd64 Tool for configuring the NVIDIA graphics driver
Also, here is $ lsmod | grep nvidia
nvidia 10744943 0
drm 303102 3 i915,drm_kms_helper,nvidia
I am now searching for the required glx extenion.
$ dpkg -S nvidia.ko
dpkg-query: no path found matching pattern *nvidia.ko*
$ dpkg -S nvidia.
nvidia-331: /usr/lib32/nvidia-331/vdpau/libvdpau_nvidia.so.331.113
nvidia-331: /usr/lib/nvidia-331/vdpau/libvdpau_nvidia.so
nvidia-331: /usr/lib/nvidia-331/vdpau/libvdpau_nvidia.so.1
nvidia-opencl-icd-331: /etc/OpenCL/vendors/nvidia.icd
linux-headers-3.13.0-37-generic: /usr/src/linux-headers-3.13.0-37-generic/include/config/fb/nvidia.h
nvidia-331: /usr/lib32/nvidia-331/vdpau/libvdpau_nvidia.so
nvidia-331: /usr/lib/nvidia-331/vdpau/libvdpau_nvidia.so.331.113
nvidia-331: /usr/lib32/nvidia-331/vdpau/libvdpau_nvidia.so.1
nvidia-prime: /usr/share/lightdm/lightdm.conf.d/90-nvidia.conf
libdirectfb-1.2-9:amd64: /usr/lib/x86_64-linux-gnu/directfb-1.2-9/gfxdrivers/libdirectfb_nvidia.so
mintdrivers: /usr/share/linuxmint/mintDrivers/icons/nvidia.png
linux-headers-3.13.0-37-generic: /usr/src/linux-headers-3.13.0-37-generic/include/config/net/vendor/nvidia.h
I think I already have libglx?
$ dpkg -S libglx
nvidia-331: /usr/lib/nvidia-331/xorg/libglx.so
xserver-xorg-core: /usr/lib/xorg/modules/extensions/libglx.so
vlc: /usr/lib/vlc/plugins/video_output/libglx_plugin.so
nvidia-331: /usr/lib/nvidia-331/xorg/libglx.so.331.113
Also, I still have no xorg.conf, should I use nvidia-xconfig
for that or is there a better way?
$ dpkg -S nvidia
Output: http://pastebin.com/XGt9BXmS
$ ls /lib/modules/3.13.0-37-generic/kernel/drivers/video/nvidia
nvidiafb.ko
Edit 7: I forgot to mention that each time I reinstalled Mint I kept the /home directory. Not sure if there's any files in there that might be messing things up?
/etc/X11/xorg.conf.04052015
. That does not have the right name. And in any case doesn't look right. How many screens do you have? One or two? – Faheem Mitha Apr 05 '15 at 13:34dpkg -l | grep nvidia
returns blank. That's not right. Are you not using the Mint Nvidia binary drivers? Also pastelsmod | grep nvidia
, please. – Faheem Mitha Apr 05 '15 at 13:36dpkg -S nvidia.ko
should locate your kernel module. Paste the result of that. – Faheem Mitha Apr 05 '15 at 13:43dpkg -S | grep nvidia | grep ko
. And you definitely need axorg.conf
. How many screens do you want to configure for? It seems you have one at the moment, so I recommend one. If you get things working, you can refine your config later. If you have axorg.conf
to propose, paste it in. – Faheem Mitha Apr 05 '15 at 14:26dpkg -S nvidia | grep ko
. – Faheem Mitha Apr 05 '15 at 14:31nvidia-xconfigure
to create an xorg.conf file but Cinnamon still crashed when I rebooted, and the resolution was stuck at 640x480 for some reason. – user258458 Apr 05 '15 at 14:31dpkg -S
anddpkg -l
do different things, and you already posteddpkg -l
. You also forgot to mention what card you have. Add that in. – Faheem Mitha Apr 05 '15 at 14:32lshw -C video
output at the top). – user258458 Apr 05 '15 at 14:39dpkg -S nvidia
anddpkg -S nvidia | grep ko
. Rundpkg -S nvidia
and replace the results. You can removedpkg -S nvidia | grep ko
. Your specific laptop model doesn't much info about it on the net. – Faheem Mitha Apr 05 '15 at 15:02lib/modules/3.13.0-37-generic/kernel/drivers/video/nvidia/
directory? Also, when did you install thelinux-image-extra-3.13.0-37-generic
package? – Faheem Mitha Apr 05 '15 at 15:13