内核软件包升级后,bumblebee 出现了问题。这个问题从 12.04 版开始,一直延续到 13.04 版。
基本上概括如下;在全新安装 ubuntu(无论哪个版本)后,我安装了 bumblebee,它开箱即用。当内核升级(例如从 3.8.0-19 升级到 3.8.0-22)后,一段时间后,bumblebee 会崩溃,并出现以下错误/var/log/syslog:
kernel: [ 4.135691] bbswitch: Unknown symbol mcount (err 0)
bumblebeed[1259]: Module bbswitch could not be loaded (timeout?)
bumblebeed[1259]: No switching method available. The dedicated card will always be on.
bumblebeed[1259]: /usr/sbin/bumblebeed 3.2.1 started
输出大黄蜂--v:
[ 3326.529062] [DEBUG]Found card: 01:00.0 (discrete)
[ 3326.529106] [DEBUG]Found card: 00:02.0 (integrated)
[ 3326.529121] [DEBUG]Reading file: /etc/bumblebee/bumblebee.conf
[ 3326.529739] [INFO]Configured driver: nvidia
[ 3326.529767] [DEBUG]Skipping auto-detection, using configured driver 'nvidia'
[ 3326.529986] [DEBUG]Process /sbin/modprobe started, PID 4986.
[ 3326.530101] [DEBUG]Hiding stderr for execution of /sbin/modprobe
[ 3326.533252] [DEBUG]SIGCHILD received, but wait failed with No child processes
[ 3326.533715] [INFO]Loading driver bbswitch (module bbswitch)
[ 3326.533961] [DEBUG]Process modprobe started, PID 4987.
ERROR: could not insert 'bbswitch': Unknown symbol in module, or unknown parameter (see dmesg)
[ 3326.537523] [DEBUG]Process with PID 4987 returned code 1
[ 3326.537888] [ERROR]Module bbswitch could not be loaded (timeout?)
[ 3326.537936] [DEBUG]bbswitch is not available, perhaps you need to insmod it?
[ 3326.537993] [INFO]Skipping switcheroo PM method because it is not explicitly selected in the configuration.
[ 3326.538022] [WARN]No switching method available. The dedicated card will always be on.
[ 3326.538047] [DEBUG]Active configuration:
[ 3326.538078] [DEBUG] bumblebeed config file: /etc/bumblebee/bumblebee.conf
[ 3326.538100] [DEBUG] X display: :8
[ 3326.538122] [DEBUG] LD_LIBRARY_PATH: /usr/lib/nvidia-304:/usr/lib32/nvidia-304
[ 3326.538150] [DEBUG] Socket path: /var/run/bumblebee.socket
[ 3326.538172] [DEBUG] pidfile: /var/run/bumblebeed.pid
[ 3326.538207] [DEBUG] xorg.conf file: /etc/bumblebee/xorg.conf.nvidia
[ 3326.538238] [DEBUG] xorg.conf.d dir: /etc/bumblebee/xorg.conf.d
[ 3326.538260] [DEBUG] ModulePath: /usr/lib/nvidia-304/xorg,/usr/lib/xorg/modules
[ 3326.538282] [DEBUG] GID name: bumblebee
[ 3326.538306] [DEBUG] Power method: auto
[ 3326.538328] [DEBUG] Stop X on exit: 1
[ 3326.538354] [DEBUG] Driver: nvidia
[ 3326.538375] [DEBUG] Driver module: nvidia-304
[ 3326.538402] [DEBUG] Card shutdown state: 1
[ 3326.538635] [DEBUG]Process /sbin/modprobe started, PID 4988.
[ 3326.538722] [DEBUG]Hiding stderr for execution of /sbin/modprobe
[ 3326.541954] [DEBUG]SIGCHILD received, but wait failed with No child processes
[ 3326.542076] [DEBUG]Configuration test passed.
[ 3326.542196] [ERROR]Daemon already running, pid 1292
输出dmesg | grep bbswitch:
bbswitch: Unknown symbol mcount (err 0)
输出dkms bbswitch 状态:
bbswitch, 0.7, 3.8.0-19-generic, x86_64: installed
bbswitch, 0.7, 3.8.0-22-generic, x86_64: installed
此问题最近已发布这里但没有发布解决方案。此外,它不同于这问题。
目前,到目前为止,我发现的唯一解决方法是重新安装 ubuntu,升级到最新的内核版本,然后安装 bumblebee。此后,它运行良好,直到下一次内核bumblebee 升级时,它会再次崩溃,我必须重新安装。这远非最佳,因为我必须大约每 2 周这样做一次 :(。
一些信息:
Ubuntu 13.04; kernel version 3.8.0-22-generic
Clevo W150HR, i7 2630QM, NV GT555M, 8GB RAM, SSD+HDD
有人知道如何修复这个问题吗?
编辑:结果发现这是 gcc 版本过时的问题。
答案1
正如所讨论的,这似乎是 gcc 旧版本的问题这里。
在 gcc 4.4 下安装将会中断,但在 gcc 4.7+ 上可以正常工作。