Unix & Linux
debian nvidia bumblebee
Updated Wed, 29 Jun 2022 23:06:43 GMT

nVidia GeForece 960M Debian Jessie Bumblebee problem ((EE) /dev/dri/card0: failed to set DRM interface version 1.4: Permission denied)


More info on my case:

I have Lenovo y50-70 laptop with nVidia GeForece 960M GTX and Debia Jessie here. I'm trying to get bumblebee to work and with no success. I have the newest nvidia-driver package (352.21) from experimental branch that supports my card. I've spent hours on that and tried many different solutions, but I still have the same problem. When running optirun .... i get the following output:

mazikwyry@debian:~$ optirun -vv  glxgears
[ 1526.261227] [DEBUG]Reading file: /etc/bumblebee/bumblebee.conf
[ 1526.261439] [INFO]Configured driver: nvidia
[ 1526.261534] [DEBUG]optirun version 3.2.1 starting...
[ 1526.261546] [DEBUG]Active configuration:
[ 1526.261554] [DEBUG] bumblebeed config file: /etc/bumblebee/bumblebee.conf
[ 1526.261562] [DEBUG] X display: :8
[ 1526.261570] [DEBUG] LD_LIBRARY_PATH: /usr/lib/x86_64-linux-gnu/nvidia:/usr/lib/i386-linux-gnu/nvidia:/usr/lib/nvidia
[ 1526.261578] [DEBUG] Socket path: /var/run/bumblebee.socket
[ 1526.261587] [DEBUG] Accel/display bridge: auto
[ 1526.261596] [DEBUG] VGL Compression: proxy
[ 1526.261604] [DEBUG] VGLrun extra options: 
[ 1526.261613] [DEBUG] Primus LD Path: /usr/lib/x86_64-linux-gnu/primus:/usr/lib/i386-linux-gnu/primus:/usr/lib/primus:/usr/lib32/primus
[ 1526.261670] [DEBUG]Using auto-detected bridge primus
[ 1531.082437] [INFO]Response: No - error: [XORG] (EE) /dev/dri/card0: failed to set DRM interface version 1.4: Permission denied
[ 1531.082451] [ERROR]Cannot access secondary GPU - error: [XORG] (EE) /dev/dri/card0: failed to set DRM interface version 1.4: Permission denied
[ 1531.082455] [DEBUG]Socket closed.
[ 1531.082466] [ERROR]Aborting because fallback start is disabled.
[ 1531.082469] [DEBUG]Killing all remaining processes.

What is strange, after that, when i run cat /proc/acpi/bbswitch i get:

0000:01:00.0 ON

the card seems to be ENABLED and there is no way to disable it. sudo tee /proc/acpi/bbswitch <<<OFF doesn't take effect.

Here are my conf files (after changes found in tutorials and forums):

/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:/usr/lib/primus:/usr/lib32/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/x86_64-linux-gnu/nvidia:/usr/lib/i386-linux-gnu/nvidia:/usr/lib/nvidia
# comma-separated path of the directory containing nvidia_drv.so and the
# default Xorg modules path
XorgModulePath=/usr/lib/nvidia,/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

/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"
    BusID "PCI:01:00:0"
    Option "ProbeAllGpus" "false"
    Option "NoLogo" "true"
    Option "UseEDID" "false"
    Option "UseDisplayDevice" "none"
EndSection
Section "Screen"
    Identifier "Default Screen"
    Device "DiscreteNvidia"
EndSection

Here is my DKMS stsus:

mazikwyry@debian:~$ sudo dkms status
bbswitch, 0.8, 3.16.0-4-amd64, x86_64: installed
broadcom-sta, 6.30.223.248, 3.16.0-4-amd64, x86_64: installed
fglrx, 14.9+ga14.201, 3.16.0-4-amd64, x86_64: installed
nvidia-current, 352.30, 3.16.0-4-amd64, x86_64: installed
open-vm-tools, 9.4.6, 3.16.0-4-amd64, x86_64: installed

Log of /var/log/Xorg.8.log after running optirun:

[  1526.264] 
X.Org X Server 1.16.4
Release Date: 2014-12-20
[  1526.264] X Protocol Version 11, Revision 0
[  1526.264] Build Operating System: Linux 3.16.0-4-amd64 x86_64 Debian
[  1526.264] Current Operating System: Linux debian 3.16.0-4-amd64 #1 SMP Debian 3.16.7-ckt11-1+deb8u4 (2015-09-19) x86_64
[  1526.264] Kernel command line: BOOT_IMAGE=/boot/vmlinuz-3.16.0-4-amd64 root=UUID=10a90c2a-9942-4d0f-9f87-2b71da659404 ro quiet
[  1526.264] Build Date: 11 February 2015  12:32:02AM
[  1526.265] xorg-server 2:1.16.4-1 (http://www.debian.org/support) 
[  1526.265] Current version of pixman: 0.32.6
[  1526.265]  Before reporting problems, check http://wiki.x.org
  to make sure that you have the latest version.
[  1526.265] Markers: (--) probed, (**) from config file, (==) default setting,
  (++) from command line, (!!) notice, (II) informational,
  (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
[  1526.265] (==) Log file: "/var/log/Xorg.8.log", Time: Fri Oct  2 23:07:28 2015
[  1526.265] (++) Using config file: "/etc/bumblebee/xorg.conf.nvidia"
[  1526.265] (++) Using config directory: "/etc/bumblebee/xorg.conf.d"
[  1526.265] (==) Using system config directory "/usr/share/X11/xorg.conf.d"
[  1526.265] (==) ServerLayout "Layout0"
[  1526.265] (**) |-->Screen "Default Screen" (0)
[  1526.265] (**) |   |-->Monitor "<default monitor>"
[  1526.265] (**) |   |-->Device "DiscreteNvidia"
[  1526.265] (==) No monitor specified for screen "Default Screen".
  Using a default monitor configuration.
[  1526.265] (**) Option "AutoAddDevices" "false"
[  1526.265] (**) Option "AutoAddGPU" "false"
[  1526.265] (**) Not automatically adding devices
[  1526.265] (==) Automatically enabling devices
[  1526.265] (**) Not automatically adding GPU devices
[  1526.265] (WW) The directory "/usr/share/fonts/X11/cyrillic" does not exist.
[  1526.265]  Entry deleted from font path.
[  1526.265] (==) FontPath set to:
  /usr/share/fonts/X11/misc,
  /usr/share/fonts/X11/100dpi/:unscaled,
  /usr/share/fonts/X11/75dpi/:unscaled,
  /usr/share/fonts/X11/Type1,
  /usr/share/fonts/X11/100dpi,
  /usr/share/fonts/X11/75dpi,
  built-ins
[  1526.265] (++) ModulePath set to "/usr/lib/nvidia,/usr/lib/xorg/modules"
[  1526.265] (==) |-->Input Device "<default pointer>"
[  1526.265] (==) |-->Input Device "<default keyboard>"
[  1526.265] (==) The core pointer device wasn't specified explicitly in the layout.
  Using the default mouse configuration.
[  1526.265] (==) The core keyboard device wasn't specified explicitly in the layout.
  Using the default keyboard configuration.
[  1526.265] (II) Loader magic: 0x7f4de6f00d80
[  1526.265] (II) Module ABI versions:
[  1526.265]  X.Org ANSI C Emulation: 0.4
[  1526.265]  X.Org Video Driver: 18.0
[  1526.265]  X.Org XInput driver : 21.0
[  1526.265]  X.Org Server Extension : 8.0
[  1526.265] (II) xfree86: Adding drm device (/dev/dri/card1)
[  1526.265] (II) xfree86: Adding drm device (/dev/dri/card0)
[  1526.265] (EE) /dev/dri/card0: failed to set DRM interface version 1.4: Permission denied
[  1526.266] (--) PCI:*(0:1:0:0) 10de:139b:17aa:3978 rev 162, Mem @ 0xd0000000/16777216, 0xa0000000/268435456, 0xb0000000/33554432, I/O @ 0x00004000/128, BIOS @ 0x????????/524288
[  1526.267] (II) LoadModule: "glx"
[  1526.267] (II) Loading /usr/lib/nvidia/current/libglx.so
[  1526.274] (II) Module glx: vendor="NVIDIA Corporation"
[  1526.274]  compiled for 4.0.2, module version = 1.0.0
[  1526.274]  Module class: X.Org Server Extension
[  1526.274] (II) NVIDIA GLX Module  352.30  Tue Jul 21 18:22:32 PDT 2015
[  1526.274] (II) LoadModule: "nvidia"
[  1526.274] (II) Loading /usr/lib/nvidia/current/nvidia_drv.so
[  1526.275] (II) Module nvidia: vendor="NVIDIA Corporation"
[  1526.275]  compiled for 4.0.2, module version = 1.0.0
[  1526.275]  Module class: X.Org Video Driver
[  1526.275] (II) LoadModule: "mouse"
[  1526.275] (II) Loading /usr/lib/xorg/modules/input/mouse_drv.so
[  1526.275] (II) Module mouse: vendor="X.Org Foundation"
[  1526.275]  compiled for 1.16.1, module version = 1.9.1
[  1526.275]  Module class: X.Org XInput Driver
[  1526.275]  ABI class: X.Org XInput driver, version 21.0
[  1526.275] (II) LoadModule: "kbd"
[  1526.275] (WW) Warning, couldn't open module kbd
[  1526.275] (II) UnloadModule: "kbd"
[  1526.275] (II) Unloading kbd
[  1526.275] (EE) Failed to load module "kbd" (module does not exist, 0)
[  1526.275] (II) NVIDIA dlloader X Driver  352.30  Tue Jul 21 18:01:20 PDT 2015
[  1526.275] (II) NVIDIA Unified Driver for all Supported NVIDIA GPUs
[  1526.275] (--) using VT number 7
[  1526.275] (II) Loading sub module "fb"
[  1526.275] (II) LoadModule: "fb"
[  1526.275] (II) Loading /usr/lib/xorg/modules/libfb.so
[  1526.275] (II) Module fb: vendor="X.Org Foundation"
[  1526.275]  compiled for 1.16.4, module version = 1.0.0
[  1526.275]  ABI class: X.Org ANSI C Emulation, version 0.4
[  1526.275] (II) Loading sub module "wfb"
[  1526.275] (II) LoadModule: "wfb"
[  1526.275] (II) Loading /usr/lib/xorg/modules/libwfb.so
[  1526.275] (II) Module wfb: vendor="X.Org Foundation"
[  1526.275]  compiled for 1.16.4, module version = 1.0.0
[  1526.275]  ABI class: X.Org ANSI C Emulation, version 0.4
[  1526.275] (II) Loading sub module "ramdac"
[  1526.275] (II) LoadModule: "ramdac"
[  1526.275] (II) Module "ramdac" already built-in
[  1526.276] (II) NVIDIA(0): Creating default Display subsection in Screen section
  "Default Screen" for depth/fbbpp 24/32
[  1526.276] (==) NVIDIA(0): Depth 24, (==) framebuffer bpp 32
[  1526.276] (==) NVIDIA(0): RGB weight 888
[  1526.276] (==) NVIDIA(0): Default visual is TrueColor
[  1526.276] (==) NVIDIA(0): Using gamma correction (1.0, 1.0, 1.0)
[  1526.276] (**) NVIDIA(0): Option "NoLogo" "true"
[  1526.276] (**) NVIDIA(0): Option "ProbeAllGpus" "false"
[  1526.276] (**) NVIDIA(0): Option "UseEDID" "false"
[  1526.276] (**) NVIDIA(0): Option "UseDisplayDevice" "none"
[  1526.276] (**) NVIDIA(0): Enabling 2D acceleration
[  1526.276] (**) NVIDIA(0): Ignoring EDIDs
[  1526.276] (**) NVIDIA(0): Option "UseDisplayDevice" set to "none"; enabling NoScanout
[  1526.276] (**) NVIDIA(0):     mode
[  1531.080] (EE) NVIDIA(GPU-0): Failed to initialize the NVIDIA GPU at PCI:1:0:0.  Please
[  1531.080] (EE) NVIDIA(GPU-0):     check your system's kernel log for additional error
[  1531.080] (EE) NVIDIA(GPU-0):     messages and refer to Chapter 8: Common Problems in the
[  1531.080] (EE) NVIDIA(GPU-0):     README for additional information.
[  1531.080] (EE) NVIDIA(GPU-0): Failed to initialize the NVIDIA graphics device!
[  1531.080] (EE) NVIDIA(0): Failing initialization of X screen 0
[  1531.080] (II) UnloadModule: "nvidia"
[  1531.080] (II) UnloadSubModule: "wfb"
[  1531.080] (II) UnloadSubModule: "fb"
[  1531.080] (EE) Screen(s) found, but none have a usable configuration.
[  1531.080] (EE) 
Fatal server error:
[  1531.080] (EE) no screens found(EE) 
[  1531.080] (EE) 
Please consult the The X.Org Foundation support 
   at http://wiki.x.org
 for help. 
[  1531.080] (EE) Please also check the log file at "/var/log/Xorg.8.log" for additional information.
[  1531.080] (EE) 
[  1531.080] (EE) Server terminated with error (1). Closing log file.

System details:

Linux debian 3.16.0-4-amd64 #1 SMP Debian 3.16.7-ckt11-1+deb8u4 (2015-09-19) x86_64 GNU/Linux

This is what I found in dmesg:

[  354.047180] bbswitch: enabling discrete graphics
[  354.551571] ACPI Error: [AR02] Namespace lookup failure, AE_NOT_FOUND (20140424/psargs-359)
[  354.551576] ACPI Error: Method parse/execution failed [\_SB_.PCI0.PEG0._PRT] (Node ffff88025e8775b8), AE_NOT_FOUND (20140424/psparse-536)
[  354.790306] [drm] Initialized nvidia-drm 0.0.0 20150116 for 0000:01:00.0 on minor 1
[  354.790310] NVRM: loading NVIDIA UNIX x86_64 Kernel Module  352.30  Tue Jul 21 18:53:45 PDT 2015
[  355.868269] vgaarb: this pci device is not a vga device
[  355.875114] nvidia 0000:01:00.0: irq 51 for MSI/MSI-X
[  355.877361] ACPI Warning: \_SB_.PCI0.PEG0.PEGP._DSM: Argument #4 type mismatch - Found [Buffer], ACPI requires [Package] (20140424/nsarguments-95)
[  355.877391] ACPI Warning: \_SB_.PCI0.PEG0.PEGP._DSM: Argument #4 type mismatch - Found [Buffer], ACPI requires [Package] (20140424/nsarguments-95)
[  355.877405] ACPI Warning: \_SB_.PCI0.PEG0.PEGP._DSM: Argument #4 type mismatch - Found [Buffer], ACPI requires [Package] (20140424/nsarguments-95)
[  355.877427] ACPI Warning: \_SB_.PCI0.PEG0.PEGP._DSM: Argument #4 type mismatch - Found [Buffer], ACPI requires [Package] (20140424/nsarguments-95)
[  355.877441] ACPI Warning: \_SB_.PCI0.PEG0.PEGP._DSM: Argument #4 type mismatch - Found [Buffer], ACPI requires [Package] (20140424/nsarguments-95)
[  355.877454] ACPI Warning: \_SB_.PCI0.PEG0.PEGP._DSM: Argument #4 type mismatch - Found [Buffer], ACPI requires [Package] (20140424/nsarguments-95)
[  355.877482] ACPI Warning: \_SB_.PCI0.PEG0.PEGP._DSM: Argument #4 type mismatch - Found [Buffer], ACPI requires [Package] (20140424/nsarguments-95)
[  355.877495] ACPI Warning: \_SB_.PCI0.PEG0.PEGP._DSM: Argument #4 type mismatch - Found [Buffer], ACPI requires [Package] (20140424/nsarguments-95)
[  361.914749] NVRM: failed to copy vbios to system memory.
[  361.915070] NVRM: RmInitAdapter failed! (0x30:0xffff:849)
[  361.915075] NVRM: rm_init_adapter failed for device bearing minor number 0
[  361.915091] NVRM: nvidia_frontend_open: minor 0, module->open() failed, error -5
[  368.708519] bbswitch: device 0000:01:00.0 is in use by driver 'nvidia', refusing OFF
[  372.212171] bbswitch: device 0000:01:00.0 is in use by driver 'nvidia', refusing OFF
[ 1526.663075] vgaarb: this pci device is not a vga device
[ 1526.663374] nvidia 0000:01:00.0: irq 51 for MSI/MSI-X
[ 1526.665339] ACPI Warning: \_SB_.PCI0.PEG0.PEGP._DSM: Argument #4 type mismatch - Found [Buffer], ACPI requires [Package] (20140424/nsarguments-95)
[ 1526.665369] ACPI Warning: \_SB_.PCI0.PEG0.PEGP._DSM: Argument #4 type mismatch - Found [Buffer], ACPI requires [Package] (20140424/nsarguments-95)
[ 1526.665382] ACPI Warning: \_SB_.PCI0.PEG0.PEGP._DSM: Argument #4 type mismatch - Found [Buffer], ACPI requires [Package] (20140424/nsarguments-95)
[ 1526.665402] ACPI Warning: \_SB_.PCI0.PEG0.PEGP._DSM: Argument #4 type mismatch - Found [Buffer], ACPI requires [Package] (20140424/nsarguments-95)
[ 1526.665414] ACPI Warning: \_SB_.PCI0.PEG0.PEGP._DSM: Argument #4 type mismatch - Found [Buffer], ACPI requires [Package] (20140424/nsarguments-95)
[ 1526.665426] ACPI Warning: \_SB_.PCI0.PEG0.PEGP._DSM: Argument #4 type mismatch - Found [Buffer], ACPI requires [Package] (20140424/nsarguments-95)
[ 1526.665450] ACPI Warning: \_SB_.PCI0.PEG0.PEGP._DSM: Argument #4 type mismatch - Found [Buffer], ACPI requires [Package] (20140424/nsarguments-95)
[ 1526.665462] ACPI Warning: \_SB_.PCI0.PEG0.PEGP._DSM: Argument #4 type mismatch - Found [Buffer], ACPI requires [Package] (20140424/nsarguments-95)
[ 1531.468440] NVRM: failed to copy vbios to system memory.
[ 1531.468767] NVRM: RmInitAdapter failed! (0x30:0xffff:849)
[ 1531.468772] NVRM: rm_init_adapter failed for device bearing minor number 0
[ 1531.468787] NVRM: nvidia_frontend_open: minor 0, module->open() failed, error -5



Solution

Found the answer!

The Debian Jessie Stable's Bumblebee doesn't work with 960M (*1)
http://forums.debian.net/viewtopic.php?t=125046#p603640

Use the jessie-backports driver instead.

If not already there, add the following to /etc/apt/sources.list
# jessie-backports
deb http://httpredir.debian.org/debian jessie-backports main contrib non-free

then run
sudo apt-get update &&
sudo apt-get purge nvidia* bumblebee* &&
sudo apt-get autoremove &&
sudo apt-get install -t jessie-backports bumblebee-nvidia
and reboot

Note: It might not be necessary to do the apt-get autoremove step, etc... and
you might have to do some of the stuff from https://wiki.debian.org/Bumblebee as well.

(*1) "Quadro K1200, Quadro M6000, GeForce 920M, GeForce 930A, GeForce 930M, GeForce 940M, GeForce GTX 950M, GeForce GTX 960M, GeForce GTX TITAN X."





Comments (4)

  • +0 – Was going to delete my old answer(or ask how to do it), but someone else beat me to it. — Oct 21, 2016 at 21:14  
  • +0 – Can I delete my old answer so I don't even see it? How? — Oct 23, 2016 at 17:39  
  • +0 – Seems that there maybe some bugs with this driver. With the game I tried: 48fps@4k max, no matter the quality settings(Windows can do 60fps60Hz@4k with 4xAA* on this game using the NVidia Card); Can't turn on AA. Can't exit the game without shutting down system. *[AA=anti-aliasing] — Oct 23, 2016 at 17:51  
  • +0 – Unfortunately not able to check that as no longer an Linux user. Hope will help somebody @bryan-ritter — Oct 24, 2016 at 08:08  


External Links

External links referenced by this document: