最近の まではapt-get upgrade
、bumblebee を使用して NVIDIA グラフィック カードを管理していましたが、問題なく動作していました。 を使用するとprimusrun
、 で 700 fps 以上を実現できましたglxgears
。しかし、今は を試みるとprimusrun glxgears
、次のエラーが発生します。
primus: fatal: Bumblebee daemon reported: error: Could not load GPU driver
そこで調べてみるdmesg
と、次のことがわかりました。
[33359.665924] nvidia: Unknown symbol acpi_os_wait_events_complete (err 0)
を使用するとdpkg
、次の nvidia パッケージがインストールされていることがわかります。
- バンブルビー-NVIDIA
- nvidia-304
- nvidia-304 アップデート
- nvidia-現在
- nvidia 設定
これをグーグルで検索するとこれこのページでは、カーネル バージョン 3.13 (私が使用しているもの) でエラーが発生する場合は、ドライバーにパッチを追加して再コンパイルすることを提案しています。ドライバーを再コンパイルするためのソース コードはどこで入手できますか? nvidia ドライバーはクローズド ソースだと思っていましたが、そのフォーラムの人々は nvidia の開発者ではないようです。私は と を使用してパッケージをコンパイルすることに慣れていますmake
が、ドライバーのコンパイルに関するアドバイスがあれば、ぜひ教えてください。
編集:私も同じ問題を抱えていると思いますこれ人。
答え1
パッチを当てる必要のあるファイルは/usr/src/nvidia-??/nv-acpi.c
(私のシステムではnvidia-331
パスは/usr/src/nvidia-331-331.38/nv-acpi.c
)に保存されています。ドライバーそれ自体クローズドソースですが、このファイルはドライバー/カーネルの相互作用に属します。
304 と 304 アップデートの両方があるため、Bumblebee が使用する方にパッチを適用してください (疑わしい場合は両方にパッチを適用してください)。
次にカーネルモジュールを再構築するには
$ sudo dpkg-reconfigure nvidia-304
$ sudo dpkg-reconfigure nvidia-304-updates
ご想像のとおり、これは一時的な修正です。これらのパッケージのいずれかを更新すると、変更内容は失われます。それを避けるにはこれらのパッケージの更新をブロックする。