Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP

Loading…

optirun fails due to "[XORG] (EE) [drm] KMS not enabled" #541

Closed
nbi1 opened this Issue · 6 comments

3 participants

@nbi1

SolydX (Debian testing)
Linux haswell 3.11-2-amd64 #1 SMP Debian 3.11.10-1 (2013-12-04) x86_64 GNU/Linux
packages: bumblebee 3.2.1-4, primus 0~20130904-, bbswitch-dkms 0.7-2, xserver-xorg-video-nouveau 1:1.0.10-1, libdrm-nouveau2:amd64 2.4.50-1
hardware: Asus N550JV-DB71 laptop (Intel HD4600, NVIDIA GT750M)

The bumblebee documentation doesn't mention any explicit steps for enabling KMS when trying to utilize nouveau via Bumblebee. My assumption therefore was that the installation would take care of that or at a minimum flag the problem. The packages all installed without incident and the Bumblebee daemon is running. But when I attempt to optirun:

optirun glxspheres
[ERROR]Cannot access secondary GPU - error: XORG [drm] KMS not enabled
[ERROR]Aborting because fallback start is disabled.

However the kernel config shows:
CONFIG_FRAMEBUFFER_CONSOLE=y

bumblebee Xorg.8.log:

[  5310.824] 
X.Org X Server 1.14.5
Release Date: 2013-12-12
[  5310.824] X Protocol Version 11, Revision 0
[  5310.824] Build Operating System: Linux 3.13.0-rc2-patser+ x86_64 Debian
[  5310.824] Current Operating System: Linux haswell 3.11-2-amd64 #1 SMP Debian 3.11.10-1 (2013-12-04) x86_64
[  5310.824] Kernel command line: BOOT_IMAGE=/boot/vmlinuz-3.11-2-amd64 root=UUID=40db2dda-21da-4e1f-96c4-62dc09c6c709 ro quiet splash
[  5310.824] Build Date: 13 December 2013  10:12:53AM
[  5310.824] xorg-server 2:1.14.5-1 (Maarten Lankhorst <maarten.lankhorst@ubuntu.com>) 
[  5310.824] Current version of pixman: 0.32.4
[  5310.824]    Before reporting problems, check http://wiki.x.org
        to make sure that you have the latest version.
[  5310.824] Markers: (--) probed, (**) from config file, (==) default setting,
        (++) from command line, (!!) notice, (II) informational,
        (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
[  5310.825] (==) Log file: "/var/log/Xorg.8.log", Time: Sun Feb 16 14:14:53 2014
[  5310.825] (++) Using config file: "/etc/bumblebee/xorg.conf.nouveau"
[  5310.825] (++) Using config directory: "/etc/bumblebee/xorg.conf.d"
[  5310.825] (==) Using system config directory "/usr/share/X11/xorg.conf.d"
[  5310.825] (==) ServerLayout "Layout0"
[  5310.825] (==) No screen section available. Using defaults.
[  5310.825] (**) |-->Screen "Default Screen Section" (0)
[  5310.825] (**) |   |-->Monitor "<default monitor>"
[  5310.826] (==) No device specified for screen "Default Screen Section".
        Using the first device section listed.
[  5310.826] (**) |   |-->Device "DiscreteNvidia"
[  5310.826] (==) No monitor specified for screen "Default Screen Section".
        Using a default monitor configuration.
[  5310.826] (**) Option "AutoAddDevices" "false"
[  5310.826] (**) Option "AutoAddGPU" "false"
[  5310.826] (**) Not automatically adding devices
[  5310.826] (==) Automatically enabling devices
[  5310.826] (**) Not automatically adding GPU devices
[  5310.826] (WW) The directory "/usr/share/fonts/X11/cyrillic" does not exist.
[  5310.826]    Entry deleted from font path.
[  5310.826] (==) 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
[  5310.826] (==) ModulePath set to "/usr/lib/xorg/modules"
[  5310.826] (==) |-->Input Device "<default pointer>"
[  5310.826] (==) |-->Input Device "<default keyboard>"
[  5310.826] (==) The core pointer device wasn't specified explicitly in the layout.
        Using the default mouse configuration.
[  5310.826] (==) The core keyboard device wasn't specified explicitly in the layout.
        Using the default keyboard configuration.
[  5310.826] (II) Loader magic: 0x7f6550224d00
[  5310.826] (II) Module ABI versions:
[  5310.826]    X.Org ANSI C Emulation: 0.4
[  5310.826]    X.Org Video Driver: 14.1
[  5310.826]    X.Org XInput driver : 19.1
[  5310.826]    X.Org Server Extension : 7.0
[  5310.826] (II) xfree86: Adding drm device (/dev/dri/card0)
[  5310.827] setversion 1.4 failed
[  5310.828] (--) PCI:*(0:1:0:0) 10de:0fe4:1043:11cd rev 161, Mem @ 0xf6000000/16777216, 0xe0000000/268435456, 0xf0000000/33554432, I/O @ 0x0000e000/128, BIOS @ 0x????????/524288
[  5310.829] (II) Open ACPI successful (/var/run/acpid.socket)
[  5310.829] Initializing built-in extension Generic Event Extension
[  5310.829] Initializing built-in extension SHAPE
[  5310.829] Initializing built-in extension MIT-SHM
[  5310.829] Initializing built-in extension XInputExtension
[  5310.829] Initializing built-in extension XTEST
[  5310.829] Initializing built-in extension BIG-REQUESTS
[  5310.829] Initializing built-in extension SYNC
[  5310.829] Initializing built-in extension XKEYBOARD
[  5310.829] Initializing built-in extension XC-MISC
[  5310.829] Initializing built-in extension SECURITY
[  5310.829] Initializing built-in extension XINERAMA
[  5310.829] Initializing built-in extension XFIXES
[  5310.829] Initializing built-in extension RENDER
[  5310.829] Initializing built-in extension RANDR
[  5310.829] Initializing built-in extension COMPOSITE
[  5310.829] Initializing built-in extension DAMAGE
[  5310.829] Initializing built-in extension MIT-SCREEN-SAVER
[  5310.829] Initializing built-in extension DOUBLE-BUFFER
[  5310.829] Initializing built-in extension RECORD
[  5310.829] Initializing built-in extension DPMS
[  5310.829] Initializing built-in extension X-Resource
[  5310.829] Initializing built-in extension XVideo
[  5310.829] Initializing built-in extension XVideo-MotionCompensation
[  5310.829] Initializing built-in extension SELinux
[  5310.829] Initializing built-in extension XFree86-VidModeExtension
[  5310.829] Initializing built-in extension XFree86-DGA
[  5310.829] Initializing built-in extension XFree86-DRI
[  5310.829] Initializing built-in extension DRI2
[  5310.829] (II) LoadModule: "glx"
[  5310.829] (II) Loading /usr/lib/xorg/modules/extensions/libglx.so
[  5310.830] (II) Module glx: vendor="X.Org Foundation"
[  5310.830]    compiled for 1.14.5, module version = 1.0.0
[  5310.830]    ABI class: X.Org Server Extension, version 7.0
[  5310.830] (==) AIGLX enabled
[  5310.830] Loading extension GLX
[  5310.830] (II) LoadModule: "nouveau"
[  5310.830] (II) Loading /usr/lib/xorg/modules/drivers/nouveau_drv.so
[  5310.830] (II) Module nouveau: vendor="X.Org Foundation"
[  5310.830]    compiled for 1.14.3, module version = 1.0.10
[  5310.830]    Module class: X.Org Video Driver
[  5310.830]    ABI class: X.Org Video Driver, version 14.1
[  5310.831] (II) LoadModule: "mouse"
[  5310.831] (II) Loading /usr/lib/xorg/modules/input/mouse_drv.so
[  5310.831] (II) Module mouse: vendor="X.Org Foundation"
[  5310.831]    compiled for 1.14.3, module version = 1.9.0
[  5310.831]    Module class: X.Org XInput Driver
[  5310.831]    ABI class: X.Org XInput driver, version 19.1
[  5310.831] (II) LoadModule: "kbd"
[  5310.831] (WW) Warning, couldn't open module kbd
[  5310.831] (II) UnloadModule: "kbd"
[  5310.831] (II) Unloading kbd
[  5310.831] (EE) Failed to load module "kbd" (module does not exist, 0)
[  5310.831] (II) NOUVEAU driver Date:   Thu Nov 7 14:56:48 2013 +1000
[  5310.832] (II) NOUVEAU driver for NVIDIA chipset families :
[  5310.832]    RIVA TNT        (NV04)
[  5310.832]    RIVA TNT2       (NV05)
[  5310.832]    GeForce 256     (NV10)
[  5310.832]    GeForce 2       (NV11, NV15)
[  5310.832]    GeForce 4MX     (NV17, NV18)
[  5310.832]    GeForce 3       (NV20)
[  5310.832]    GeForce 4Ti     (NV25, NV28)
[  5310.832]    GeForce FX      (NV3x)
[  5310.832]    GeForce 6       (NV4x)
[  5310.832]    GeForce 7       (G7x)
[  5310.832]    GeForce 8       (G8x)
[  5310.832]    GeForce GTX 200 (NVA0)
[  5310.832]    GeForce GTX 400 (NVC0)
[  5310.832] (--) using VT number 7

[  5310.832] (EE) [drm] KMS not enabled
[  5310.832] (EE) No devices detected.
[  5310.832] (EE) 
Fatal server error:
[  5310.832] (EE) no screens found(EE) 
[  5310.832] (EE) 
@Lekensteyn
Owner

It seems more likely to me that the kernel you are using does not support your graphics card family. Have you looked in your dmesg already and looked up whether your GT750M is actually supported by your kernel and xf86-video-nouveau version?

@nbi1

What sort of kernel support are we looking for (I'm new to NVIDIA)? My desktop workstation uses ATI hardware which uses the ATI fglrx module, there's nothing in the Kernel config that refers to ATI or fglrx. So long as the xorg.conf references the fglrx driver all is good. Is NVIDIA graphics support fundamentally different somehow?

I suppose nouveau could be defective somehow, I'll need to do more digging on that. But I would be surprised to discover that I'm the first laptop user with a GT750M that has encountered this issue. Laptops with the 750M have been available for 1.5 years now.

@Lekensteyn
Owner

I somehow managed to misread the Bumblebee version as your kernel version. 3.11 should be recent enough to support your Kepler card. xf86-video-nouveau won't work if your nouveau module is not loaded (which could then trigger the KMS error). Have you checked your kernel logs after starting optirun?

@nbi1

Other than the framebuffer and nouveau CONFIGs what other CONFIG should I be looking at? But it looks like here's a hint as to what's wrong:

optirun glxspheres
produces in /var/log/messages:
Feb 16 17:45:47 haswell kernel: [ 4513.907237] MXM: GUID detected in BIOS
Feb 16 17:45:47 haswell kernel: [ 4513.908323] nouveau [ DEVICE][0000:01:00.0] BOOT0 : 0x0e7240a2
Feb 16 17:45:47 haswell kernel: [ 4513.908334] nouveau [ DEVICE][0000:01:00.0] Chipset: GK107 (NVE7)
Feb 16 17:45:47 haswell kernel: [ 4513.908340] nouveau [ DEVICE][0000:01:00.0] Family : NVE0
Feb 16 17:45:47 haswell kernel: [ 4513.912091] nouveau [ VBIOS][0000:01:00.0] checking PRAMIN for image...
Feb 16 17:45:47 haswell kernel: [ 4513.960286] nouveau [ VBIOS][0000:01:00.0] ... signature not found
Feb 16 17:45:47 haswell kernel: [ 4513.960287] nouveau [ VBIOS][0000:01:00.0] checking PROM for image...
Feb 16 17:45:47 haswell kernel: [ 4513.960373] nouveau [ VBIOS][0000:01:00.0] ... signature not found
Feb 16 17:45:47 haswell kernel: [ 4513.960377] nouveau [ VBIOS][0000:01:00.0] checking ACPI for image...
Feb 16 17:45:47 haswell kernel: [ 4513.960380] nouveau [ VBIOS][0000:01:00.0] ... signature not found
Feb 16 17:45:47 haswell kernel: [ 4513.960384] nouveau [ VBIOS][0000:01:00.0] checking PCIROM for image...
Feb 16 17:45:47 haswell kernel: [ 4513.960599] nouveau [ VBIOS][0000:01:00.0] ... signature not found
Feb 16 17:45:47 haswell kernel: [ 4513.960600] nouveau [ VBIOS][0000:01:00.0] checking PLATFORM for image...
Feb 16 17:45:47 haswell kernel: [ 4513.960601] nouveau [ VBIOS][0000:01:00.0] ... signature not found
Feb 16 17:45:47 haswell kernel: [ 4513.960769] nouveau: probe of 0000:01:00.0 failed with error -22

That has me perplexed. It was able to identify GK107 (NVE7) which is indeed the GT750M. Looks like nouveau can't talk to the VBIOS which seems to imply lack of support. Do you agree?

@nbi1

Hmm, I can't even tell from the nouveau web site if the 750M is supported:

"Nouveau aims to support all NVIDIA cards, but no effort is made to document which cards (and BIOSes) actually work, as this is deemed infeasible. Just try it and submit bug reports if it doesn't work."

So in essence what's being said is "if our crap works that's great, if not then don't complain because it is only crap". Great way to give open source a good name.

My apologies to you & Bumblebee for laying this at your door. There seem to be quite a few bug reports on this lack of compatibility in the nouveau bug tracker. It seems I need to pursue using the NVIDIA binary driver. Thanks for your help.

@Lekensteyn
Owner

It may, or it may not work. Kepler (NVE0 family, yours is NVE7 a.k.a. GK107) is supported according to http://nouveau.freedesktop.org/wiki/FeatureMatrix/. If you are not satisfied with nouveau, then the proprietary driver is an obvious choice.

Oh, and no need to apologize ;)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Something went wrong with that request. Please try again.