nVidia 驅動程式出現問題(如何套用修補程式)?

nVidia 驅動程式出現問題(如何套用修補程式)?

直到我最近一次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
  • 英偉達-304
  • nvidia-304-更新
  • Nvidia-當前
  • nvidia 設定

谷歌搜尋這讓我頁面,建議在核心版本 3.13(我正在使用的版本)上出現錯誤時向驅動程式添加補丁並重新編譯它。在哪裡可以找到驅動程式的原始程式碼來重新編譯它?我以為 nvidia 驅動程式是閉源的,但該論壇上的人似乎不是 nvidia 開發人員。我很樂意編譯軟體包和 with 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

正如您所猜測的,這只是一個臨時修復。如果您更新其中任何一個軟體包,您的變更就會消失。為了避免這種情況阻止這些軟體包的更新

相關內容