Bumblebee-Project / Bumblebee

Bumblebee daemon and client rewritten in C
http://www.bumblebee-project.org/
GNU General Public License v3.0
1.29k stars 142 forks source link

Bumblebee/Nouveau: Cannot access secondary GPU - error: Could not load GPU driver #800

Open TheChymera opened 8 years ago

TheChymera commented 8 years ago

I have just installed bumblebee, but it seems it does not let me use my nvidia graphics card:

chymera@zenbookhost ~ $  optirun -v --debug glxspheres 
[  503.954765] [DEBUG]optirun version 3.2.1 starting...
[  503.954785] [DEBUG]Active configuration:
[  503.954796] [DEBUG] bumblebeed config file: /etc/bumblebee/bumblebee.conf
[  503.954802] [DEBUG] X display: :8
[  503.954810] [DEBUG] LD_LIBRARY_PATH: 
[  503.954813] [DEBUG] Socket path: /var/run/bumblebee.socket
[  503.954819] [DEBUG] Accel/display bridge: auto
[  503.954825] [DEBUG] VGL Compression: proxy
[  503.954832] [DEBUG] VGLrun extra options: 
[  503.954840] [DEBUG] Primus LD Path: /usr/lib/primus:/usr/lib32/primus
[  503.954862] [DEBUG]Using auto-detected bridge virtualgl
[  503.955911] [INFO]Response: No - error: Could not load GPU driver

[  503.955921] [ERROR]Cannot access secondary GPU - error: Could not load GPU driver

[  503.955928] [DEBUG]Socket closed.
[  503.955944] [ERROR]Aborting because fallback start is disabled.
[  503.955950] [DEBUG]Killing all remaining processes.

The service is running nicely, though it seems each first time after boot it fails to see the nouveau module:

zenbookhost chymera # systemctl status bumblebeed
● bumblebeed.service - Bumblebee C Daemon
   Loaded: loaded (/usr/lib/systemd/system/bumblebeed.service; enabled; vendor preset: disabled)
   Active: active (running) since Mon 2016-08-22 17:09:23 CEST; 1min 29s ago
 Main PID: 277 (bumblebeed)
   CGroup: /system.slice/bumblebeed.service
           └─277 /usr/sbin/bumblebeed

Aug 22 17:09:23 zenbookhost systemd[1]: Started Bumblebee C Daemon.
Aug 22 17:09:23 zenbookhost bumblebeed[277]: [    2.882352] [INFO]/usr/sbin/bumblebeed 3.2.1 started
Aug 22 17:10:24 zenbookhost bumblebeed[277]: [   63.143040] [ERROR]Module nouveau could not be loaded (timeout?)
Aug 22 17:10:24 zenbookhost bumblebeed[277]: [   63.143059] [ERROR]Could not load GPU driver
zenbookhost chymera # systemctl restart bumblebeed
zenbookhost chymera # systemctl status bumblebeed
● bumblebeed.service - Bumblebee C Daemon
   Loaded: loaded (/usr/lib/systemd/system/bumblebeed.service; enabled; vendor preset: disabled)
   Active: active (running) since Mon 2016-08-22 17:11:06 CEST; 2s ago
 Main PID: 1297 (bumblebeed)
   CGroup: /system.slice/bumblebeed.service
           └─1297 /usr/sbin/bumblebeed

Aug 22 17:11:06 zenbookhost systemd[1]: Started Bumblebee C Daemon.
Aug 22 17:11:06 zenbookhost bumblebeed[1297]: [  105.186149] [INFO]/usr/sbin/bumblebeed 3.2.1 started

I have no /etc/X11/xorg.conf , and I have tried everything else recommended for this error (e.g. on the Arch wiki) short of switching to the proprietary Nvidia drivers. Is there no way to get my graphics card to work with bumblebee and nouveau?

I'm on an ASUS UX303L and running Gentoo. @msva do you maybe know more about this?

karolherbst commented 8 years ago

quick fix: don't use bumblebee but prime offloading instead (for better performance and support): https://nouveau.freedesktop.org/wiki/Optimus/

karolherbst commented 8 years ago

also check dmesg for any nouveau issues

TheChymera commented 8 years ago

I came across that article before. but it's not really much of a guide. It just assumes xrandr --listproviders will give me two entries, it does not:

Providers: number : 1
Provider 0: id: 0x46 cap: 0xf, Source Output, Sink Output, Source Offload, Sink Offload crtcs: 3 outputs: 4 associated providers: 0 name:modesetting

Whether I have:

An updated graphic stack (Kernel, xserver and mesa). KMS drivers for both GPUs loaded. DDX drivers for both GPUs loaded.

I cannot say, since those requirements are not clearly identified. For what it's worth I am running the Gentoo Linux 4.6.4 kernel, and I have the following mesa:

[I] media-libs/mesa
     Available versions:  [M]7.10.3 10.3.7-r1^d 11.0.6^d (~)11.0.9^d (~)11.1.3^d (~)11.1.4^d (~)11.2.1^d (~)11.2.2^d (~)12.0.1^d **9999^d {bindist +classic d3d9 debug +dri3 +egl +gallium +gbm gles gles1 gles2 hardened (+)llvm motif +nptl opencl openmax openvg osmesa pax_kernel pic selinux +udev vaapi valgrind vdpau wayland xa xvmc ABI_MIPS="n32 n64 o32" ABI_PPC="32 64" ABI_S390="32 64" ABI_X86="32 64 x32" KERNEL="FreeBSD linux" VIDEO_CARDS="freedreno i915 i965 ilo intel mach64 mga nouveau r100 r128 r200 r300 r600 radeon radeonsi savage sis tdfx vc4 via vmware"}
     Installed versions:  12.0.1^d(13:27:05 13.07.2016)(classic dri3 egl gallium gbm gles2 llvm nptl udev xa -bindist -d3d9 -debug -gles1 -opencl -openmax -osmesa -pax_kernel -pic -selinux -vaapi -valgrind -vdpau -wayland -xvmc ABI_MIPS="-n32 -n64 -o32" ABI_PPC="-32 -64" ABI_S390="-32 -64" ABI_X86="64 -32 -x32" KERNEL="-FreeBSD" VIDEO_CARDS="intel nouveau -freedreno -i915 -i965 -ilo -r100 -r200 -r300 -r600 -radeon -radeonsi -vc4 -vmware")
     Homepage:            http://mesa3d.sourceforge.net/
     Description:         OpenGL-like graphic library for Linux

Gentoo uses use-flags to include or exclude optional bits of packges, but the flags I have enabled (classic dri3 egl gallium gbm gles2 llvm nptl udev xa) look like the ones I would need.

TheChymera commented 8 years ago

As for dmesg, these are the only relevant entries I could find:

[    0.405689] nouveau 0000:03:00.0: unknown chipset (118010a2)
[    0.405697] nouveau: probe of 0000:03:00.0 failed with error -12

lspci shows this:

03:00.0 3D controller: NVIDIA Corporation GM108M [GeForce 840M] (rev a2)

There are only very few reports of issues with this card and nouveau, and apparently one way to avoid issues is to "just use bumblebee".

modprobe nouveau works now, but I also get this:

zenbookhost chymera # modprobe --first-time nouveau
modprobe: ERROR: could not insert 'nouveau': Module already in kernel

Perhaps unrelated, but dmesg also gives me dozens of lines of:

[ 1504.349067] [drm:intel_pipe_update_start] *ERROR* Potential atomic update failure on pipe A
TheChymera commented 8 years ago

@karolherbst ?

karolherbst commented 8 years ago

if you have DRI3 enabled in X, you don't need that provider stuff. And if your gpu isn't recognized, you should update your kernel. GM108 support landed a bit later, I think 4.7 or 4.8.

ghost commented 8 years ago

I have the same problem I installed nvidia/intel with bumblebee and I dont know what I do wrong check out my post, for details. https://redd.it/4znhog