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
  • 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-updates,请确保修补 Bumblebee 使用的那个(如有疑问,请修补两者)。

然后重建内核模块运行

$ sudo dpkg-reconfigure nvidia-304
$ sudo dpkg-reconfigure nvidia-304-updates

正如您所猜测的,这只是一个临时解决方案。如果您更新任何这些软件包,您的更改就会消失。为了避免这种情况阻止这些软件包的更新

相关内容