Latest Manjaro update breaks bumblebee

Greetings, I moved my Thinkpad W520 from Linux Mint to Manjaro a month ago. Managed to get bumblebee + nvidia-390 working without too much fuss. “optirun glxgears” worked. Went for the default update today (~1gb worth of downloads). Now “optirun glxgears” gets me the familiar error
The Bumblebee daemon has not been started yet or the socket path /var/run/bumblebee.socket was incorrect.
I had faced this earlier and it was solved by adding myself to the bumblebee group. However doing this step again does not solve the issue. I also noticed that linux56 has been removed and replaced by linux57, and that I am unable to “reinstall” the proprietary driver from the driver manager svcreen - there are errors reported by pacman.
I’d like to understand what can typically go out of sync between BB and the kernel so as to get to a set of repeatable debug steps I can do upon each update to get things working again! Is the best solution to stick to the LTS kernel Linux 54 and uninstall any newer ones?
Any help would be greatly appreciated.
Thanks! - Ram

This indicates something is wrong with your system.

Please take a look here and report back with the errors:

Thank you @cscs! Here is the detail as advised by that post. In the meantime I discovered that sudo bumblebeed followed by sudo optirun glxgears works fine so it appears the packages are somewhat OK but the user/group assignments are messed somewhere. (The following is AFTER running sudo optirun glxgears.)

[ramkumarr@RR-W520 ~]$ inxi -Fza
System:    Kernel: 5.7.14-1-MANJARO x86_64 bits: 64 compiler: gcc v: 10.1.0 
           parameters: BOOT_IMAGE=/boot/vmlinuz-5.7-x86_64 root=UUID=0f3a9a52-05d7-4c6b-b46b-1c7896b8c026 rw quiet apparmor=1 
           security=apparmor udev.log_priority=3 
           Desktop: KDE Plasma 5.19.4 tk: Qt 5.15.0 wm: kwin_x11 dm: SDDM Distro: Manjaro Linux 
Machine:   Type: Laptop System: LENOVO product: 42763JU v: ThinkPad W520 serial: <filter> Chassis: type: 10 serial: <filter> 
           Mobo: LENOVO model: 42763JU serial: <filter> UEFI [Legacy]: LENOVO v: 8BET62WW (1.42 ) date: 07/26/2013 
Battery:   ID-1: BAT0 charge: 21.4 Wh condition: 21.7/86.6 Wh (25%) volts: 12.3/11.1 model: SANYO 42T4799 type: Li-ion 
           serial: <filter> status: Unknown 
CPU:       Topology: Quad Core model: Intel Core i7-2760QM bits: 64 type: MT MCP arch: Sandy Bridge family: 6 
           model-id: 2A (42) stepping: 7 microcode: 2F L2 cache: 6144 KiB 
           flags: avx lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx bogomips: 38293 
           Speed: 1039 MHz min/max: 800/3500 MHz Core speeds (MHz): 1: 1039 2: 1013 3: 1279 4: 1901 5: 1011 6: 1077 7: 992 
           8: 860 
           Vulnerabilities: Type: itlb_multihit status: KVM: Split huge pages 
           Type: l1tf mitigation: PTE Inversion; VMX: conditional cache flushes, SMT vulnerable 
           Type: mds mitigation: Clear CPU buffers; SMT vulnerable 
           Type: meltdown mitigation: PTI 
           Type: spec_store_bypass mitigation: Speculative Store Bypass disabled via prctl and seccomp 
           Type: spectre_v1 mitigation: usercopy/swapgs barriers and __user pointer sanitization 
           Type: spectre_v2 mitigation: Full generic retpoline, IBPB: conditional, IBRS_FW, STIBP: conditional, RSB filling 
           Type: srbds status: Not affected 
           Type: tsx_async_abort status: Not affected 
Graphics:  Device-1: Intel 2nd Generation Core Processor Family Integrated Graphics vendor: Lenovo driver: i915 v: kernel 
           bus ID: 00:02.0 chip ID: 8086:0126 
           Device-2: NVIDIA GF108GLM [Quadro 1000M] vendor: Lenovo driver: nvidia v: 390.132 alternate: nouveau,nvidia_drm 
           bus ID: 01:00.0 chip ID: 10de:0dfa 
           Device-3: Chicony Lenovo Integrated Camera (0.3MP) type: USB driver: uvcvideo bus ID: 1-1.6:7 chip ID: 04f2:b217 
           Display: x11 server: X.Org 1.20.8 compositor: kwin_x11 driver: nvidia display ID: :0 screens: 1 
           Screen-1: 0 s-res: 1920x1080 s-dpi: 96 s-size: 508x285mm (20.0x11.2") s-diag: 582mm (22.9") 
           Monitor-1: LVDS1 res: 1920x1080 hz: 60 dpi: 143 size: 340x190mm (13.4x7.5") diag: 389mm (15.3") 
           OpenGL: renderer: Mesa DRI Intel HD Graphics 3000 (SNB GT2) v: 3.3 Mesa 20.1.5 compat-v: 3.0 direct render: Yes 
Audio:     Device-1: Intel 6 Series/C200 Series Family High Definition Audio vendor: Lenovo ThinkPad T520 
           driver: snd_hda_intel v: kernel bus ID: 00:1b.0 chip ID: 8086:1c20 
           Device-2: NVIDIA GF108 High Definition Audio vendor: Lenovo driver: snd_hda_intel v: kernel bus ID: 01:00.1 
           chip ID: 10de:0bea 
           Sound Server: ALSA v: k5.7.14-1-MANJARO 
Network:   Device-1: Intel 82579LM Gigabit Network vendor: Lenovo ThinkPad T520 driver: e1000e v: 3.2.6-k port: 6080 
           bus ID: 00:19.0 chip ID: 8086:1502 
           IF: enp0s25 state: up speed: 100 Mbps duplex: full mac: <filter> 
           Device-2: Intel Centrino Advanced-N 6205 [Taylor Peak] driver: iwlwifi v: kernel port: 5000 bus ID: 03:00.0 
           chip ID: 8086:0085 
           IF: wlp3s0 state: up mac: <filter> 
           IF-ID-1: vmnet1 state: unknown speed: N/A duplex: N/A mac: <filter> 
           IF-ID-2: vmnet8 state: unknown speed: N/A duplex: N/A mac: <filter> 
Drives:    Local Storage: total: 577.55 GiB used: 323.54 GiB (56.0%) 
           SMART Message: Unable to run smartctl. Root privileges required. 
           ID-1: /dev/sda vendor: Hitachi model: HTS727550A9E364 size: 465.76 GiB block size: physical: 4096 B logical: 512 B 
           speed: 3.0 Gb/s rotation: 7200 rpm serial: <filter> rev: D0H0 scheme: MBR 
           ID-2: /dev/sdb vendor: Samsung model: SSD 850 EVO 120GB size: 111.79 GiB block size: physical: 512 B logical: 512 B 
           speed: 6.0 Gb/s serial: <filter> rev: 2B6Q scheme: MBR 
Partition: ID-1: / raw size: 34.18 GiB size: 33.39 GiB (97.70%) used: 16.09 GiB (48.2%) fs: ext4 dev: /dev/sda1 
Swap:      Kernel: swappiness: 60 (default) cache pressure: 100 (default) 
           ID-1: swap-1 type: partition size: 16.00 GiB used: 8.1 MiB (0.0%) priority: -2 dev: /dev/sda3 
Sensors:   System Temperatures: cpu: 63.0 C mobo: N/A 
           Fan Speeds (RPM): cpu: 3538 
Info:      Processes: 262 Uptime: 10h 53m Memory: 7.56 GiB used: 1.67 GiB (22.1%) Init: systemd v: 245 Compilers: gcc: 10.1.0 
           Packages: 1294 apt: 4 pacman: 1290 lib: 350 flatpak: 0 Shell: Bash v: 5.0.18 running in: konsole inxi: 3.1.05 
[ramkumarr@RR-W520 ~]$ 
[ramkumarr@RR-W520 ~]$ sudo dmesg | grep nvidia
[sudo] password for ramkumarr: 
[    8.778509] audit: type=1400 audit(1598030648.744:10): apparmor="STATUS" operation="profile_load" profile="unconfined" name="nvidia_modprobe" pid=324 comm="apparmor_parser"
[    8.779554] audit: type=1400 audit(1598030648.747:11): apparmor="STATUS" operation="profile_load" profile="unconfined" name="nvidia_modprobe//kmod" pid=324 comm="apparmor_parser"
[   68.903646] nvidia: module license 'NVIDIA' taints kernel.
[   68.926182] nvidia-nvlink: Nvlink Core is being initialized, major device number 235
[   68.926601] nvidia 0000:01:00.0: enabling device (0000 -> 0003)
[   68.926688] nvidia 0000:01:00.0: vgaarb: changed VGA decodes: olddecodes=io+mem,decodes=none:owns=none
[ 2772.644024] bbswitch: device 0000:01:00.0 is in use by driver 'nvidia', refusing OFF
[ 2797.837975] nvidia-modeset: Loading NVIDIA Kernel Mode Setting Driver for UNIX platforms  390.132  Fri Nov  1 04:06:17 PDT 2019
[ 2806.262197] nvidia-modeset: Unloading
[ramkumarr@RR-W520 ~]$ sudo dmesg | grep bumblebee
[ramkumarr@RR-W520 ~]$ sudo dmesg | grep bumblebeed
[ramkumarr@RR-W520 ~]$ sudo dmesg | grep bbswitch
[ 2772.642047] bbswitch: version 0.8
[ 2772.642073] bbswitch: Found integrated VGA device 0000:00:02.0: \_SB_.PCI0.VID_
[ 2772.642134] bbswitch: Found discrete VGA device 0000:01:00.0: \_SB_.PCI0.PEG_.VID_
[ 2772.644002] bbswitch: detected an Optimus _DSM function
[ 2772.644024] bbswitch: device 0000:01:00.0 is in use by driver 'nvidia', refusing OFF
[ 2772.644028] bbswitch: Succesfully loaded. Discrete card 0000:01:00.0 is on
[ramkumarr@RR-W520 ~]$ 

If this reveals the issue, great. Meanwhile I will try to understand the journalctl command and see if I can get some info from there.
Best - Ram

Mk. But what about your errors trying to install/reinstall drivers?

Well . first lets see what mhwd sees:

mhwd -l && mhwd -li

Then, assuming you still need/want the 390 bumblebee driver lets try to reinstall it:

sudo mhwd -f -i pci video-hybrid-intel-nvidia-390xx-bumblebee

(and please copy any errors here)

I had tried the reinstall from the Device Manager GUI, it reported conflicts while trying to uninstall Linux57-bbswitch…these appear below. Since I had turned the nvidia card ON permanently (bb complained about no switching method being available upon running sudo bumblebeed) I rebooted so as to enter a “default” state again. Then I have the following: (Yes, 390 is the highest driver version supported for the Quadro 1000M, which is why I am using that rather than something newer.)

[ramkumarr@RR-W520 ~]$ mhwd -l && mhwd -li
> 0000:01:00.0 (0300:10de:0dfa) Display controller nVidia Corporation:
--------------------------------------------------------------------------------
                  NAME               VERSION          FREEDRIVER           TYPE
--------------------------------------------------------------------------------
video-hybrid-intel-nvidia-390xx-bumblebee            2019.10.25               false            PCI
video-hybrid-intel-nvidia-340xx-bumblebee            2019.10.25               false            PCI
    video-nvidia-390xx            2019.10.25               false            PCI
    video-nvidia-340xx            2019.10.25               false            PCI
           video-linux            2018.05.04                true            PCI
     video-modesetting            2020.01.13                true            PCI
            video-vesa            2017.03.12                true            PCI


> 0000:00:02.0 (0300:8086:0126) Display controller Intel Corporation:
--------------------------------------------------------------------------------
                  NAME               VERSION          FREEDRIVER           TYPE
--------------------------------------------------------------------------------
video-hybrid-intel-nvidia-390xx-bumblebee            2019.10.25               false            PCI
video-hybrid-intel-nvidia-340xx-bumblebee            2019.10.25               false            PCI
           video-linux            2018.05.04                true            PCI
     video-modesetting            2020.01.13                true            PCI
            video-vesa            2017.03.12                true            PCI


> Installed PCI configs:
--------------------------------------------------------------------------------
                  NAME               VERSION          FREEDRIVER           TYPE
--------------------------------------------------------------------------------
video-hybrid-intel-nvidia-390xx-bumblebee            2019.10.25               false            PCI
           video-linux            2018.05.04                true            PCI
     video-modesetting            2020.01.13                true            PCI


Warning: No installed USB configs!
[ramkumarr@RR-W520 ~]$ 
ramkumarr@RR-W520 ~]$ sudo mhwd -f -i pci video-hybrid-intel-nvidia-390xx-bumblebee
[sudo] password for ramkumarr: 
> Removing video-hybrid-intel-nvidia-390xx-bumblebee...
Sourcing /etc/mhwd-x86_64.conf
Has lib32 support: true
Sourcing /var/lib/mhwd/local/pci/video-hybrid-intel-nvidia-390xx-bumblebee/MHWDCONFIG
Processing classid: 0300
Sourcing /var/lib/mhwd/scripts/include/0300
checking dependencies...
error: failed to prepare transaction (could not satisfy dependencies)
:: removing linux57-bbswitch breaks dependency 'linux57-bbswitch' required by linux-latest-bbswitch
:: removing linux57-nvidia-390xx breaks dependency 'linux57-nvidia-390xx' required by linux-latest-nvidia-390xx
Error: pacman failed!
Error: script failed!
[ramkumarr@RR-W520 ~]$ 

One thing I notice is that linux-latest-nvidia and linux-latest-bbswitch are new entrants afterthe latest update.

Mk… for the reinstall lets just remove those first.

sudo pacman -R linux-latest-bbswitch linux-latest-nvidia-390xx
sudo mhwd -f -i pci video-hybrid-intel-nvidia-390xx-bumblebee

(also pinging @Ste74 because this is an interesting issue)

Ahh…so those linux-latest-blah packages were indeed playing spoilsport. After the above removal and reinstallation of nvidia-390 bumblebee works again! I’m glad this is an “interesting issue” :slight_smile:.

Thank you so much for the assistance.

A couple of minor irritants which I noticed upon the initial Manjaro install still remain which I mention here. There is some primus dependency cycle. eg

  1. While Removing video-hybrid-intel-nvidia-390xx-bumblebee
    warning: dependency cycle detected:
    warning: primus will be removed after its bumblebee dependency
    and then again when
  2. Installing video-hybrid-intel-nvidia-390xx-bumblebee
    warning: dependency cycle detected:
    warning: primus will be installed before its bumblebee dependency

Secondly, when running sudo nvidia-settings I get the error dialog "You do not appear to be using the Nvidia X driver…(run nvidia-xconfig as root)…
but following this instruction does not get rid of the message.

[ramkumarr@RR-W520 ~]$ sudo nvidia-settings
[sudo] password for ramkumarr: 

ERROR: Error querying enabled displays on GPU 0 (Missing Extension).


ERROR: Error querying connected displays on GPU 0 (Missing Extension).


ERROR: nvidia-settings could not find the registry key file. This file should have been installed along with this driver at /usr/share/nvidia/nvidia-application-profiles-key-documentation. The application profiles will continue to work,
       but values cannot be prepopulated or validated, and will not be listed in the help text. Please see the README for possible values and descriptions.

Best - Ram

sudo optirun -b none nvidia-settings -c :8

https://wiki.manjaro.org/index.php?title=Configure_Graphics_Cards

Thanks for the ref - that worked.
Appreciate all the great support!!

1 Like

Now there appears to be a new problem - not new in the world of Bumblebee, but new for me as this issue was not preset before the last update to Manjaro. The issue is this: optirun works fine till I suspend and resume from suspend, after that BB is unable to load the nvidia driver and optirun fails. I know this has been reported in forums earlier and there are attempted fixes, but I thought I should approach it afresh since I did NOT have this problem 2 weeks ago :slight_smile:.

Here is the error from BB after trying to run optirun after resuming from suspend:

[ramkumarr@RR-W520 ~]$ optirun glxgears
[  313.668127] [ERROR]Cannot access secondary GPU - error: Could not load GPU driver

[  313.668286] [ERROR]Aborting because fallback start is disabled.
[ramkumarr@RR-W520 ~]$ 

Please check after that happens the output of command

sudo modprobe nvidia

If it shows it failed that usually means a mismatch with kernel and the built module
(IE double-check which kernel you are on and force rebuild the modules for it … avoid 5.8 … actually with older bumblebee you probably want 4.19 or 5.4 LTS)

ref:
https://wiki.archlinux.org/index.php/Bumblebee#Could_not_load_GPU_driver

Oh well…the problem went away after installing another 500MB worth of updates that was pending since the weekend. modprobe nvidia now shows no error and things behave after recovering from suspend. Thanks for the tip @cscs. I’m just wondering whether all this means I should just run the linux-54 LTS kernel to avoid things breaking (or re-making) after an update.

This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.