Skip to content
daringer edited this page Jul 28, 2012 · 36 revisions

Common issues and their solution can be found here.

Are you really using an nVidia Optimus card?

Only laptops have these kind of nVidia Optimus card, so this project won't apply to desktops (for now). Cards from the 4xxM and newer series are all Optimus-enabled. The M stands for "Mobile". But having a 4xxM card isn't enough to be sure that you're having an Optimus laptop. There must also be an integrated video controller in your processor. To check that, run this command in a terminal:

lspci -vnn | grep '\''[030[02]\]'

If it outputs two lines, then you're likely having an Optimus laptop. Else, it's probably not one, ask on the hybrid graphics mailing list for more informations, providing the above command output.

Have you installed a recent nvidia driver?

Version 260.19.12 was the first to support Optimus enabled card (but does not support Optimus technology itself). Ensure that you've a recent driver installed. If you're using Ubuntu, install the ubuntu-x-swat/x-updates PPA and upgrade nvidia-current:

sudo apt-add-repository ppa:ubuntu-x-swat/x-updates
sudo apt-get update
sudo apt-get upgrade

Also make sure that you don't have drivers installed for older cards. On Ubuntu, these are the packages nvidia-96, nvidia-173 and nvidia-180.

I used MrMEEE (or mj-casalogic) before, how can I upgrade?

If you have installed Bumblebee or Ironhide from MrMEEE (or the mj-casalogic) repository, you are pretty doomed. Ubuntu users, check Upgrading on Ubuntu.

Error: couldn't get an RGB, Double-buffered visual

If you've upgraded to Ubuntu Oneiric and:

  • get the above message when running programs from the terminal
  • have broken graphics effects
  • run with fallback graphics

then you've likely added the ubuntu-x-swat/x-updates PPA before which was removed during the upgrade. Simply enable this PPA again and upgrade your nvidia-current driver:

sudo apt-add-repository ppa:ubuntu-x-swat/x-updates
sudo apt-get update
sudo apt-get upgrade

After upgrading, restart the X server (or just reboot the machine).

[VGL] Could not obtain Pbuffer-capable RGB visual on the server

[WARN] Could not open configuration file: /etc/bumblebee/bumblebee.conf

You may updated Bumblebee from an older Version to Version 3 or higher. Your old configuration file is incompatible with the new version of Bumblebee. Backup and remove the configuration:

sudo cp /etc/bumblebee/bumblebee.conf /etc/bumblebee/old.bumblebee.conf
sudo rm /etc/bumblebee/bumblebee.conf

and reinstall Bumblebee again to generate a new compatible configuration file.

[VGL] ERROR: Could not open display :8 with certain programs

Some programs quit optirun by running detached. Workaround: run a shell with optirun and start the program from that shell:

optirun bash
$ yourprogram

When done, you can exit the shell with exit. The idea is to keep at least one optirun instance running.

Desktop effects do not work anymore

If you've generated /etc/X11/xorg.conf using nvidia-xconfig, remove that file. It's not compatible with Optimus laptops:

sudo rm /etc/X11/xorg.conf

See also If you've installed from MrMEEE repository and Error: couldn't get an RGB, Double-buffered visual.

3D effects don't work and when running 3D apps in a terminal you get Xlib: extension "GLX" missing on display ":0"

First, if you are using Ubuntu using version 3.0-1~...ppa1, upgrade to 3.0-1~...ppa2 or newer and be sure that bumblebee-nvidia is installed if you are using the proprietary nvidia driver. A reboot may be necessary.

Otherwise, you've probably messed up GLX library in Xorg. To recover it, try to do the following things:

sudo apt-get install --reinstall libgl1-mesa-glx

Then reboot and your should be OK.

optirun does not work

First, if you are using Ubuntu using version 3.0-1~...ppa1, upgrade to 3.0-1~...ppa2 or newer and be sure that bumblebee-nvidia is installed if you are using the proprietary nvidia driver. A reboot may be necessary.

optirun is quite helpful in debugging, i.e. when you need to re-login after installation or if you forgot to add yourself to the bumblebee group. There are many reasons why optirun would fail to run. To start debugging, look in /var/log/sys.log and /var/log/Xorg.8.log (replace 8 by the VirtualDisplay setting in /etc/bumblebee/bumblebee.conf). New log messages are appended to the end, so make sure you look at the end of your log file for recent messages.

I don't get any power saving!

Power management relies on ACPI, disabling ACPI renders bbswitch unusable. Be sure that your kernel boot parameters do not contain on of the options noacpi, pci=noacpi, acpi=off. You can read your current kernel parameters by reading the /proc/cmdline file.

bumblebee.log: FATAL: Error inserting nvidia_current (...): No such device

If you've previously had installed ironhide or bumblebee from MrMEEE (or mj-casalogic), you've likely messed up your card. It can still be recovered however. Run lspci -d 10de: -vvnn and look for blocks starting containing "VGA compatible controller" or "3D controller". If you cannot find any, your card is turned off completely. !!! Unknown header type 7f indicates that the card is off too as shown below.

02:00.0 3D controller [0302]: nVidia Corporation Device [10de:0a7a] (rev ff) (prog-if ff)
        !!! Unknown header type 7f

In both cases, you can try to run the scripts for enabling your card. If you don't know how to, join our IRC channel on Freenode at #bumblebee (webchat).

sys.log: The Bumblebee X server failed to start. Please check /var/log/Xorg.8.log

Check your /var/log/Xorg.8.log for possible errors. Use grep -Fn '(EE' /var/log/Xorg.8.log for finding errors quickly, prefixed with the line number. Known errors messages and their description are listed below.

(EE) Failed to load module "kbd" (module does not exist, 0) (<=2.4.1)

This is a harmless message.

(EE) NVIDIA(0): No display devices found for this X screen. (<=2.4.1)

If you scroll a bit above that error and see something like:

(WW) NVIDIA(GPU-0): Invalid ConnectedMonitor request; request was for 'DFP', but
(WW) NVIDIA(GPU-0):     the valid display devices are 'CRT-0'.

Then edit /etc/bumblebee/xorg.conf.nvidia and replace DFP by CRT-0 in the line with ConnectedMonitor:

    Option "ConnectedMonitor" "DFP"

Restart Bumblebee using sudo restart bumblebeed.

Failed to initialize the NVIDIA GPU at PCI:1:0:0. Please ...

PCI:1:0:0 may vary, but take a look at the last lines of the kernel log (usually located at /var/log/kern.log, /var/log/kernel or /var/log/messages). You're probably using an outdated driver or messed a bit with improper ACPI calls (see above).

ERROR: ld.so: object 'libdlfaker.so' from LD_PRELOAD cannot be preloaded: ignored.

If you run Wine (or a 32-bit application) on Ubuntu Oneiric or later and get this error, you need to install the 32-bit libraries for VirtualGL:

sudo apt-get install virtualgl-libs:i386

Other reasons why you get this reason:

  • The program you're trying to run is a statically linked program. There is no workaround for this
  • The program you're trying to run has a setuid/setgid bit set which makes the program run under the owner of the file. For security reasons, virtualgl cannot hook into it. There is a workaround with chmod u+s, but it's very unsafe and not recommended.
  • The environment variable LD_LIBRARY_PATH is cleared. See the previous workaround for ways to solve it.

[ERROR]Cannot access secondary GPU - error: [XORG] (EE) [drm] failed to open device

If you get this error, the nouveau driver may be overriding the official one. Even if you've installed the proprietary nvidia driver, if the nouveau driver is loaded it'll take precedence. So be sure to set Driver=nvidia in /etc/bumblebee/bumblebee.conf or blacklist and unload nouveau. If you want to use the nouveau driver, check the syslog for more log entries.

This can also happen if the driver and client versions don't match. If you get this error after an update, it's likely that one was upgraded but not the other. If this is the case, you'll get messages in your kernel log (/var/log/kernel.log or similar) like this:

NVRM: API mismatch: the client has the version <version>, but
NVRM: this kernel module has the version <different version>.  Please
NVRM: make sure that this kernel module and all NVIDIA driver
NVRM: components have the same version.

To fix it, just update the one that's behind (or downgrade the one that's ahead) so they're at the same version.

[ERROR]Cannot access secondary GPU - error: could not start X Server and/or Kernel oops with GT 600M series cards (Kepler)

Make sure you have a recent kernel and the latest nvidia driver, i.e. not only the one, which first claims support for GT600M cards (302.17). First working driver for the tested card (GT620M - inside ASUS UX32-...) is the (beta) driver 304.22. (tested with kernelversion 3.4.6 on ArchLinux).

To verify this issue, make sure bbswitch cannot be loaded (e.g. move it away) and try: "nvidia-xconfig -query-gpu-info".

If you cannot solve your issue, continue at Reporting Issues.

Clone this wiki locally