Take the 2-minute tour ×
Ask Ubuntu is a question and answer site for Ubuntu users and developers. It's 100% free, no registration required.

I have installed nvidia-current on 12.04 and bumblebee according to these links http://news.softpedia.com/news/How-to-Install-The-Latest-Nvidia-Driver-on-Ubuntu-12-04-295542.shtml AND https://wiki.ubuntu.com/Bumblebee respectively. However when attempting to run optirun I get the following error:

       [ERROR]Cannot access secondary GPU - error: [XORG] (EE) NVIDIA(0): Failed t0 initialize the NVIDIA GPU at PCI:1:0:0.  Please

       [ERROR]Aborting because fallback start is disabled.

I have google this extensively, without being able to find a general consensus on what to do. I have intel core i5, and GEFORCE 740M Nvidia card. I have provided some system info below:

**root@:/home/# lspci -d 10de: -vvnn**
01:00.0 3D controller [0302]: NVIDIA Corporation Device [10de:0fdf] (rev a1)
    Subsystem: ASUSTeK Computer Inc. Device [1043:1587]
    Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
    Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
    Latency: 0, Cache Line Size: 64 bytes
    Interrupt: pin A routed to IRQ 16
    Region 0: Memory at f6000000 (32-bit, non-prefetchable) [size=16M]
    Region 1: Memory at e0000000 (64-bit, prefetchable) [size=256M]
    Region 3: Memory at f0000000 (64-bit, prefetchable) [size=32M]
    Region 5: I/O ports at e000 [size=128]
    Expansion ROM at f7000000 [disabled] [size=512K]
    Capabilities: [60] Power Management version 3
        Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)
        Status: D0 NoSoftRst+ PME-Enable- DSel=0 DScale=0 PME-
    Capabilities: [68] MSI: Enable- Count=1/1 Maskable- 64bit+
        Address: 0000000000000000  Data: 0000
    Capabilities: [78] Express (v2) Endpoint, MSI 00
        DevCap:    MaxPayload 256 bytes, PhantFunc 0, Latency L0s unlimited, L1 <64us
            ExtTag+ AttnBtn- AttnInd- PwrInd- RBE+ FLReset-
        DevCtl:    Report errors: Correctable- Non-Fatal- Fatal- Unsupported-
            RlxdOrd+ ExtTag+ PhantFunc- AuxPwr- NoSnoop+
            MaxPayload 256 bytes, MaxReadReq 512 bytes
        DevSta:    CorrErr- UncorrErr- FatalErr- UnsuppReq- AuxPwr- TransPend-
        LnkCap:    Port #0, Speed unknown, Width x16, ASPM L0s L1, Latency L0 <512ns, L1 <4us
            ClockPM+ Surprise- LLActRep- BwNot-
        LnkCtl:    ASPM Disabled; RCB 64 bytes Disabled- Retrain- CommClk+
            ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt-
        LnkSta:    Speed 2.5GT/s, Width x16, TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt-
        DevCap2: Completion Timeout: Range AB, TimeoutDis+
        DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis-
        LnkCtl2: Target Link Speed: Unknown, EnterCompliance- SpeedDis-, Selectable De-emphasis: -6dB
             Transmit Margin: Normal Operating Range, EnterModifiedCompliance- ComplianceSOS-
             Compliance De-emphasis: -6dB
        LnkSta2: Current De-emphasis Level: -3.5dB
    Capabilities: [b4] Vendor Specific Information: Len=14 <?>
    Capabilities: [100 v1] Virtual Channel
        Caps:    LPEVC=0 RefClk=100ns PATEntryBits=1
        Arb:    Fixed- WRR32- WRR64- WRR128-
        Ctrl:    ArbSelect=Fixed
        Status:    InProgress-
        VC0:    Caps:    PATOffset=00 MaxTimeSlots=1 RejSnoopTrans-
            Arb:    Fixed- WRR32- WRR64- WRR128- TWRR128- WRR256-
            Ctrl:    Enable+ ID=0 ArbSelect=Fixed TC/VC=ff
            Status:    NegoPending- InProgress-
    Capabilities: [128 v1] Power Budgeting <?>
    Capabilities: [600 v1] Vendor Specific Information: ID=0001 Rev=1 Len=024 <?>
    Capabilities: [900 v1] #19
    Kernel driver in use: nvidia
    Kernel modules: nvidia_current, nouveau, nvidiafb

root@:/home/# dmesg | grep bb

[    0.000000] PERCPU: Embedded 14 pages/cpu @f7bb2000 s34176 r0 d23168 u57344
[   15.081790] bbswitch: version 0.6
[   15.081796] bbswitch: Found integrated VGA device 0000:00:02.0: \_SB_.PCI0.GFX0
[   15.081801] bbswitch: Found discrete VGA device 0000:01:00.0: \_SB_.PCI0.PEG0.PEGP
[   15.081882] bbswitch: detected an Optimus _DSM function
[   15.081887] bbswitch: Succesfully loaded. Discrete card 0000:01:00.0 is on
[   15.083422] bbswitch: disabling discrete graphics

root@dominic:/home/# dmesg | grep nv

[    2.088239] rtc0: alarms up to one month, y3k, 242 bytes nvram, hpet irqs
[   14.245426] ACPI Error: Current brightness invalid (20120320/video-384)
[  261.089873] nvidia: module license 'NVIDIA' taints kernel.
[  261.488938] nvidia 0000:01:00.0: power state changed by ACPI to D0
[  261.488959] nvidia 0000:01:00.0: power state changed by ACPI to D0
[  261.488970] nvidia 0000:01:00.0: enabling device (0006 -> 0007)

May 14 12:48:31  kernel: [  186.764848] NVRM: loading NVIDIA UNIX x86 Kernel Module  304.88  Wed Mar 27 14:31:12 PDT 2013
May 14 12:51:12  kernel: [  348.405000] NVRM: RmInitAdapter failed! (0x26:0xffffffff:1200)
May 14 12:51:12  kernel: [  348.405018] NVRM: rm_init_adapter(0) failed
May 14 12:55:57  kernel: [  261.489352] NVRM: loading NVIDIA UNIX x86

root@:/home/# uname -a

Linux  3.5.0-28-generic #48~precise1-Ubuntu SMP Wed Apr 24 21:43:05 UTC 2013 i686 i686 i386 GNU/Linux

cat /etc/issue

Ubuntu 12.04.2 LTS \n \l

root@:/home/# dpkg -l|grep nvidia

ii  nvidia-common                                1:0.2.44.2                                       Find obsolete NVIDIA drivers
ii  nvidia-current                               304.88-0ubuntu0.0.2                              NVIDIA binary Xorg driver, kernel module and VDPAU library
ii  nvidia-settings                              304.88-0ubuntu0.0.2                              Tool of configuring the NVIDIA graphics driver

/home# cat /etc/bumblebee/bumblebee.conf \

# Configuration file for Bumblebee. Values should **not** be put between quotes

## Server options. Any change made in this section will need a server restart
# to take effect.
[bumblebeed]
# The secondary Xorg server DISPLAY number
VirtualDisplay=:8
# Should the unused Xorg server be kept running? Set this to true if waiting
# for X to be ready is too long and don't need power management at all.
KeepUnusedXServer=false
# The name of the Bumbleblee server group name (GID name)
ServerGroup=bumblebee
# Card power state at exit. Set to false if the card shoud be ON when Bumblebee
# server exits.
TurnCardOffAtExit=false
# The default behavior of '-f' option on optirun. If set to "true", '-f' will
# be ignored.
NoEcoModeOverride=false
# The Driver used by Bumblebee server. If this value is not set (or empty),
# auto-detection is performed. The available drivers are nvidia and nouveau
# (See also the driver-specific sections below)
Driver=nvidia
# Directory with a dummy config file to pass as a -configdir to secondary X
XorgConfDir=/etc/bumblebee/xorg.conf.d

## Client options. Will take effect on the next optirun executed.
[optirun]
# Acceleration/ rendering bridge, possible values are auto, virtualgl and
# primus.
Bridge=auto
# The method used for VirtualGL to transport frames between X servers.
# Possible values are proxy, jpeg, rgb, xv and yuv.
VGLTransport=proxy
# List of paths which are searched for the primus libGL.so.1 when using
# the primus bridge
PrimusLibraryPath=/usr/lib/x86_64-linux-gnu/primus:/usr/lib/i386-linux-gnu/primus
# Should the program run under optirun even if Bumblebee server or nvidia card
# is not available?
AllowFallbackToIGC=false


# Driver-specific settings are grouped under [driver-NAME]. The sections are
# parsed if the Driver setting in [bumblebeed] is set to NAME (or if auto-
# detection resolves to NAME).
# PMMethod: method to use for saving power by disabling the nvidia card, valid
# values are: auto - automatically detect which PM method to use
#         bbswitch - new in BB 3, recommended if available
#       switcheroo - vga_switcheroo method, use at your own risk
#             none - disable PM completely
# https://github.com/Bumblebee-Project/Bumblebee/wiki/Comparison-of-PM-methods

## Section with nvidia driver specific options, only parsed if Driver=nvidia
[driver-nvidia]
# Module name to load, defaults to Driver if empty or unset
KernelDriver=nvidia_current
PMMethod=auto
# colon-separated path to the nvidia libraries
LibraryPath=/usr/lib/nvidia-current:/usr/lib32/nvidia-current
# comma-separated path of the directory containing nvidia_drv.so and the
# default Xorg modules path
XorgModulePath=/usr/lib/nvidia-current/xorg,/usr/lib/xorg/modules
XorgConfFile=/etc/bumblebee/xorg.conf.nvidia

## Section with nouveau driver specific options, only parsed if Driver=nouveau
[driver-nouveau]
KernelDriver=nouveau
PMMethod=auto
XorgConfFile=/etc/bumblebee/xorg.conf.nouveau

/home# cat /etc/bumblebee/xorg.conf.nvidia

Section "ServerLayout"
    Identifier  "Layout0"
    Option      "AutoAddDevices" "false"
    Option      "AutoAddGPU" "false"
EndSection

Section "Device"
    Identifier  "DiscreteNvidia"
    Driver      "nvidia"
    VendorName  "NVIDIA Corporation"

#   If the X server does not automatically detect your VGA device,
#   you can manually set it here.
#   To get the BusID prop, run `lspci | egrep 'VGA|3D'` and input the data
#   as you see in the commented example.
#   This Setting may be needed in some platforms with more than one
#   nvidia card, which may confuse the proprietary driver (e.g.,
#   trying to take ownership of the wrong device). Also needed on Ubuntu 13.04.
#   BusID "PCI:01:00:0"

#   Setting ProbeAllGpus to false prevents the new proprietary driver
#   instance spawned to try to control the integrated graphics card,
#   which is already being managed outside bumblebee.
#   This option doesn't hurt and it is required on platforms running
#   more than one nvidia graphics card with the proprietary driver.
#   (E.g. Macbook Pro pre-2010 with nVidia 9400M + 9600M GT).
#   If this option is not set, the new Xorg may blacken the screen and
#   render it unusable (unless you have some way to run killall Xorg).
    Option "ProbeAllGpus" "false"

    Option "NoLogo" "true"
    Option "UseEDID" "false"
    Option "UseDisplayDevice" "none"
EndSection
share|improve this question
    
Please attache bumblebee configuration file located at /etc/bumblebee/bumblebee.conf (or may be /usr/local/etc/bumblebee/bumblebee.conf based on your installation location). Also include /etc/bumblebee/xorg.conf.nvidia content. –  Web-E May 14 '13 at 11:25
    
Thank you, I have now included/appended this information. –  Radagasp May 14 '13 at 12:55
    
Sorry for asking but: Do you even have NVidia Optimus technology? Does seem to me that way. –  André Stannek May 14 '13 at 12:56
    
Hi stonedsquirrel: nVidia Optimus is a hybrid graphics technology which does not work for Linux –  Radagasp May 14 '13 at 13:21
    
That is not entirely true. Optimus works partially for Linux. That's whats bumblebee is for. If you don't have Optimus you have no use for bumblebee which would explain the errors you are having. –  André Stannek May 14 '13 at 13:38

3 Answers 3

up vote 2 down vote accepted

The issue lay with the fact that in both the 12.04 and 13.04 Ubuntu repros nvidia-current is nvidia-304, and this has no support for my Geforce 740M card which is relatively new. Infact the beta driver nvidia-319.12 which supported my chipset only came out in early April, while a more stable driver nvidia-319.17 was only released just over a week ago.

In order to fix my problem in Ubuntu 13.04, I performed the following:

sudo add-apt-repository ppa:xorg-edgers/ppa
sudo apt-get update
sudo apt-get install nvidia-319

I then installed bumblebee by the method described by the wiki: https://wiki.ubuntu.com/Bumblebee

To test, I installed mesa-utils, and ran optirun glxgears with great success!

The only thing I would like to check now is whether the bumblebee version offered as default by the repro is the latest 3.2.1 released on the 26th of April. Either way it is not a hassle to upgrade.

share|improve this answer

There may be some problem in installation. There was no need to follow the first guide. I guess you have not restarted the system, if you have restarted, there would be black screen.

Only thing in configuration, which is bothering me is this line

KernelDriver=nvidia_current

it should be,

KernelDriver=nvidia-current

Change it, and then reboot. See if it works, if not read on to reinstall,

First remove nvidia-current

sudo apt-get remove nvidia-current

stop bumblebee service,

sudo stop bumblebeed

Rename the configuration file

sudo mv /etc/bumblebee/bumblebee.conf /etc/bumblebee/bumblebee.conf.old

Reinstall bumblebee with nvidia-driver

sudo apt-get install --reinstall bumblebee bumblebee-nvidia

If everything fails, report issue here https://github.com/Bumblebee-Project/Bumblebee/wiki/Reporting-Issues

share|improve this answer
    
I have the hardware.... root@dominic:/home/dominic# lspci | grep NV 01:00.0 3D controller: NVIDIA Corporation Device 0fdf (rev ff) Also the laptop product is assus S56C . –  Radagasp May 14 '13 at 14:55
    
Thanks, updated answer –  Web-E May 14 '13 at 15:10
    
root@dominic:/home/dominic# [ 352.714825] [WARN]Could not open configuration file: /etc/bumblebee/bumblebee.conf [ 352.714954] [WARN]Using default configuration [ 353.712309] [ERROR]Cannot access secondary GPU - error: [XORG] (EE) NVIDIA(0): Failed to initialize the NVIDIA GPU at PCI:1:0:0. Please [ 353.712375] [ERROR]Aborting because fallback start is disabled. Thanks. I will try Qasim's suggestion now. –  Radagasp May 14 '13 at 17:56
 sudo nano /etc/bumblebee/xorg.conf.nvidia

And remove the hash BusID "PCI:01:00:0"

    # BusID "PCI:01:00:0"

To

 BusID "PCI:01:00:0"

Bumblebee issue with 13.04

I do not know why you face this issue ..this issue has been fixed more than a week ago by bumblebee update..

  optirun -vvvv glxspheres

Check the output

[13454.974937] [DEBUG]Reading file: /etc/bumblebee/bumblebee.conf
[13454.975659] [INFO]Configured driver: nvidia
[13454.976110] [DEBUG]optirun version 3.2.1 starting...
[13454.976152] [DEBUG]Active configuration:
[13454.976164] [DEBUG] bumblebeed config file: /etc/bumblebee/bumblebee.conf
[13454.976175] [DEBUG] X display: :8
[13454.976185] [DEBUG] LD_LIBRARY_PATH: /usr/lib/nvidia-304:/usr/lib32/nvidia-304
[13454.976196] [DEBUG] Socket path: /var/run/bumblebee.socket
[13454.976206] [DEBUG] Accel/display bridge: auto
[13454.976216] [DEBUG] VGL Compression: proxy
[13454.976226] [DEBUG] VGLrun extra options: 
[13454.976236] [DEBUG] Primus LD Path: /usr/lib/x86_64-linux-gnu/primus:/usr/lib/i386-linux-gnu/primus
[13454.976306] [DEBUG]Using auto-detected bridge virtualgl
[13457.134946] [INFO]Response: Yes. X is active.

[13457.134995] [INFO]Running application using virtualgl.
[13457.135250] [DEBUG]Process vglrun started, PID 7972.
Polygons in scene: 62464
Visual ID of window: 0x20
Context is Direct
OpenGL Renderer: GeForce GT 525M/PCIe/SSE2
96.393433 frames/sec - 103.415501 Mpixels/sec
116.021494 frames/sec - 112.820229 Mpixels/sec
[13462.342559] [DEBUG]SIGCHILD received, but wait failed with No child processes
[13462.342637] [DEBUG]Socket closed.
[13462.342682] [DEBUG]Killing all remaining processes.

If its still not working check your LibraryPath its LibraryPath=/usr/lib/nvidia-304 not LibraryPath=/usr/lib/nvidia-current

ls /usr/lib/nvidia     # Double TAB 
nvidia/              nvidia-304/          nvidia-settings-304/ 

So you need to edit bumblebee.conf

 sudo nano  /etc/bumblebee/bumblebee.conf

## Section with nvidia driver specific options, only parsed if Driver=nvidia
[driver-nvidia]
# Module name to load, defaults to Driver if empty or unset
KernelDriver=nvidia_current
PMMethod=auto
# colon-separated path to the nvidia libraries
LibraryPath=/usr/lib/nvidia-current:/usr/lib32/nvidia-current
# comma-separated path of the directory containing nvidia_drv.so and the
# default Xorg modules path
XorgModulePath=/usr/lib/nvidia-current/xorg,/usr/lib/xorg/modules
XorgConfFile=/etc/bumblebee/xorg.conf.nvidia

TO

## Section with nvidia driver specific options, only parsed if Driver=nvidia
[driver-nvidia]
# Module name to load, defaults to Driver if empty or unset
KernelDriver=nvidia-304
PMMethod=auto
# colon-separated path to the nvidia libraries
LibraryPath=/usr/lib/nvidia-304:/usr/lib32/nvidia-304
# comma-separated path of the directory containing nvidia_drv.so and the
# default Xorg modules path
XorgModulePath=/usr/lib/nvidia-304/xorg,/usr/lib/xorg/modules
XorgConfFile=/etc/bumblebee/xorg.conf.nvidia
share|improve this answer
    
Nope LibraryPath=/usr/lib/nvidia-current is in my path. Also specifying BusID did not change my problem. –  Radagasp May 14 '13 at 18:26
    
@user1658296 >> lspci | grep NVIDIA >> output plzz –  Qasim May 14 '13 at 18:29
    
dominic@dominic:~$ lspci | grep NVIDIA 01:00.0 3D controller: NVIDIA Corporation Device 0fdf (rev ff) –  Radagasp May 14 '13 at 18:32
    
@user1658296 do you have skype so can see your screen ...and fix the issue ... or google screen sharing –  Qasim May 14 '13 at 18:34
    
bus id issue fixed in version.3.2 –  shantanu Jul 12 '13 at 12:48

Your Answer

 
discard

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

Not the answer you're looking for? Browse other questions tagged or ask your own question.