Bumblebee failed on F32 beta

I installed the F32 beta and the bumblebee by following the instructions at https://docs.fedoraproject.org/en-US/quick-docs/bumblebee/index.html. But the bumblebee doesn’t work. There is even no bbswitch.

$ cat /proc/acpi/bbswitch
cat: /proc/acpi/bbswitch: no such file or directory

Did anybody else see the same problem?

Hi @wuqso.

Better see the next post.
2 Likes

@wuqso

Regards.,

1 Like

I’m not reporting the bug. I just want somebody to help me resolve the problem.

That’s what they’re trying to say. Since this version of Fedora has not yet been released, “resolving the problem” is hard. The best way of doing so is reporting the bug. In general, unless you are testing software and are willing to report bugs, please do not use unstable releases. They are not meant for public consumption. They are meant for advanced users to test so that they can report bugs to ensure that these are fixed before the software is released for public consumption.

In this particular scenario, though, the solution should be relatively simple—it’s probably because Bumblebee is no longer required (probably not supported either). The RPMFusion page describes support for Optimus hardware also. Please try that:

https://rpmfusion.org/Howto/NVIDIA

https://rpmfusion.org/Howto/Optimus

Was it working on Fedora 31?
Try “sudo modprobe.d bbswitch” before “cat /proc/acpi/bbswitch”

Yes. It works on F31 but fails on F32 Beta.

$ sudo modprobe bbswitch
modprobe: FATAL: Module bbswitch not found in directory /lib/modules/5.6.0-0.rc5.git0.2.fc32.x86_64

Thank you very much for your information. I have read the Howto’s. The Nvidia howto gives some instructions on the installation of the nvidia driver. The Optimus howto mentions that full optimus support is achieved with the new xorg-x11-server on F30 and later and there is nothing else to be done beyond normal driver installation. I installed the driver but it seems that the optimus is not achieved since the Nvidia graphics card is not turned off.

$ lspci |grep -E “VGA|3D”
2:00:02.0 VGA compatible controller: Intel Corporation UHD Graphics 620 (rev 07)
19:01:00.0 3D controller: NVIDIA Corporation GP108M [GeForce MX150] (rev a1)

I’m afraid someone with Optimus hardware will have to help you here.

@kwizart: any ideas?

One needs to remove bumblebee on any modern Fedora.
Please revert back to sane defaults using https://rpmfusion.org/Howto/Optimus

1 Like

The fact that lspci can enumerate the GPU function in the PCI bus doesn’t necessarily means the device is active. So the test you provide isn’t relevant in the fully supported Optimus case.

1 Like

Thank you for your answer. The Optimus howto is not so straightforward. Is there any step-by-step instruction on the configuration of the Optimus on the modern Fedora?

My nvidia driver installation seems to have a problem:

$ modinfo -F version nvidia
modinfo: ERROR: Module nvidia not found.

$ rpm -qa | grep nvidia
572:xorg-x11-drv-nvidia-kmodsrc-440.64-2.fc32.x86_64
582:akmod-nvidia-440.64-2.fc32.x86_64
762:xorg-x11-drv-nvidia-libs-440.64-2.fc32.x86_64
1081:nvidia-settings-440.64-1.fc32.x86_64
1247:nvidia-persistenced-440.64-1.fc32.x86_64
1402:xorg-x11-drv-nvidia-cuda-libs-440.64-2.fc32.x86_64
1415:xorg-x11-drv-nvidia-440.64-2.fc32.x86_64
1739:xorg-x11-drv-nvidia-cuda-440.64-2.fc32.x86_64

The howto mentions “Once the module is built, “modinfo -F version nvidia” should outputs the version of the driver such as 440.64 and not modinfo: ERROR: Module nvidia not found.”

It can be a side effect of not having updated fedora before installing the driver, in which case you only have installed the latest kernel-devel for the latest kernel which is not the current kernel.
All kernel modules needs to be rebuilt against each Fedora kernel, so kernel and kernel-devel have to exactly match.

You can try to build with akmods --force
If you reboot to the latest kernel and the kernel is still not here, it will be built during boot, in which case you may have to reboot a second time to have it loaded automatically.

2 Likes

$ sudo akmods --force
Checking kmods exist for 5.6.0-0.rc5.git0.2.fc32.x86_64 [ confirmed ]
Building and installing nvidia-kmod [failed]
Building rpms failed; see /var/cache/akmods/nvidia/440.64-2-for-5.6.0-0.rc5.git0.2.fc32.x86_64.failed.log for details

Hint: Some kmods were ignored or failed to build or install.
You can try to rebuild and install them by by calling
‘/usr/sbin/akmods --force’ as root.

The build failed.

1 Like

It’s either because of https://rpmfusion.org/Howto/NVIDIA#Rawhide you have a “debug” kernel or because you doesn’t have a kernel matching kernel-devel.
rpm -qa kernel*

The nvidia driver should works with kernel 5.6.0

2 Likes

$ rpm -qa kernel*
kernel-modules-extra-5.6.0-0.rc5.git0.2.fc32.x86_64
kernel-devel-5.6.0-0.rc5.git0.2.fc32.x86_64
kernel-modules-5.6.0-0.rc5.git0.2.fc32.x86_64
kernel-core-5.6.0-0.rc5.git0.2.fc32.x86_64
kernel-5.6.0-0.rc5.git0.2.fc32.x86_64
kernel-headers-5.6.0-0.rc5.git0.1.fc32.x86_64

1 Like

Actually, bbswitch does not compile on Fedora 32. I don’t know if a change of the kernel api or the gcc 10 compiler of Fedora 32 is causing this. I append the log of the attempt of building bbswitch.

akmodsbuild --target x86_64 --kernels 5.6.0-0.rc7.git0.2.fc32.x86_64
/usr/src/akmods/bbswitch-kmod.latest
* Rebuilding /usr/src/akmods/bbswitch-kmod.latest for kernel(s)
5.6.0-0.rc7.git0.2.fc32.x86_64: prep build build build
rpmbuild failed with errorcode 1; last 35 Lines of log:
---
+ cp -al bbswitch-0.8 _kmod_build_5.6.0-0.rc7.git0.2.fc32.x86_64
+ RPM_EC=0
++ jobs -p
+ exit 0
Executing(%build): /bin/sh -e /var/tmp/rpm-tmp.ZCnTMS
+ umask 022
+ cd /tmp/akmodsbuild.49YFjUZu//BUILD
+ cd bbswitch-kmod-0.8
+ for kernel_version in
5.6.0-0.rc7.git0.2.fc32.x86_64___/usr/src/kernels/5.6.0-0.rc7.git0.2.fc32.x86_64
+ make -j8 -C /usr/src/kernels/5.6.0-0.rc7.git0.2.fc32.x86_64
M=/tmp/akmodsbuild.49YFjUZu/BUILD/bbswitch-kmod-0.8/_kmod_build_5.6.0-0.rc7.git0.2.fc32.x86_64
modules
make: Entering directory '/usr/src/kernels/5.6.0-0.rc7.git0.2.fc32.x86_64'
  CC [M] 
/tmp/akmodsbuild.49YFjUZu/BUILD/bbswitch-kmod-0.8/_kmod_build_5.6.0-0.rc7.git0.2.fc32.x86_64/bbswitch.o
/tmp/akmodsbuild.49YFjUZu/BUILD/bbswitch-kmod-0.8/_kmod_build_5.6.0-0.rc7.git0.2.fc32.x86_64/bbswitch.c:
In function 'bbswitch_init':
/tmp/akmodsbuild.49YFjUZu/BUILD/bbswitch-kmod-0.8/_kmod_build_5.6.0-0.rc7.git0.2.fc32.x86_64/bbswitch.c:460:63:
error: passing argument 4 of 'proc_create' from incompatible pointer
type [-Werror=incompatible-pointer-types]
  460 |     acpi_entry = proc_create("bbswitch", 0664, acpi_root_dir,
&bbswitch_fops);
      |                                                              
^~~~~~~~~~~~~~
      |                                                               |
      |                                                              
struct file_operations *
In file included from ./include/acpi/acpi_bus.h:83,
                 from ./include/linux/acpi.h:32,
                 from
/tmp/akmodsbuild.49YFjUZu/BUILD/bbswitch-kmod-0.8/_kmod_build_5.6.0-0.rc7.git0.2.fc32.x86_64/bbswitch.c:32:
./include/linux/proc_fs.h:64:122: note: expected 'const struct proc_ops
*' but argument is of type 'struct file_operations *'
   64 | struct proc_dir_entry *proc_create(const char *name, umode_t
mode, struct proc_dir_entry *parent, const struct proc_ops *proc_ops);
     
|                                                                                                  
~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: some warnings being treated as errors
make[1]: *** [scripts/Makefile.build:268:
/tmp/akmodsbuild.49YFjUZu/BUILD/bbswitch-kmod-0.8/_kmod_build_5.6.0-0.rc7.git0.2.fc32.x86_64/bbswitch.o]
Error 1
make: *** [Makefile:1683:
/tmp/akmodsbuild.49YFjUZu/BUILD/bbswitch-kmod-0.8/_kmod_build_5.6.0-0.rc7.git0.2.fc32.x86_64]
Error 2
make: Leaving directory '/usr/src/kernels/5.6.0-0.rc7.git0.2.fc32.x86_64'
error: Bad exit status from /var/tmp/rpm-tmp.ZCnTMS (%build)


RPM build errors:
    user mockbuild does not exist - using root
    user mockbuild does not exist - using root
    Bad exit status from /var/tmp/rpm-tmp.ZCnTMS (%build)

That should be the problem I once had. However, a clean installation of the F32 system and the driver of Nvidia card from the rpmfusion resolved my problem.

$ modinfo -F version nvidia
440.64

Now the power consumption is low and the buttery life is acceptable. As was mentioned by FranciscoD, Bumblebee may be no longer required in new versions of Fedora.

You can, indeed, remove the bbswitch component that is uneeded with current and official “optimus” implementation from NVIDIA.

1 Like