无法安装英伟达驱动,在函数'block_cpu_fault_locked'中:错误隐式声明函数'task_stack_page



计算机崩溃后,我正在尝试在台式计算机上重新安装 Ubuntu 和 NVIDIA 驱动程序。但是崩溃后无法成功安装NVIDIA驱动程序。第一个问题是在 Ubuntu usb 安装要求我"重新启动"计算机后,计算机进入低分辨率模式。我遇到的第二个问题是,通过按ctrl-alt-F1切换到文本命令模式后,屏幕变为黑屏。 我学会了通过编辑/etc/default/grub来解决黑屏文本命令模式,并将"nomodeset"添加到GRUB_CMDLINE_LINUX_DEFAULT变量并重新启动计算机。

然后我下载 https://us.download.nvidia.com/XFree86/Linux-x86_64/384.130/NVIDIA-Linux-x86_64-384.130.run 并安装此 NVIDIA 驱动程序。但由于以下错误,安装失败:

/

tmp/selfgz1982/NVIDIA-Linux-x86_64-384.130/krenel/nvidia-uvm/uvm8_va_block.c: 在函数'block_cpu_fault_locked':
./arch/x86/include/asm/process.h:820:39中:错误隐式声明 函数 'task_stack_page' [-Werror=隐式函数声明]
无符号长__ptr = (无符号长)task_stack_page(任务);

显卡坏了吗?
英伟达驱动器在崩溃时是否会更改母偏置或显卡设置?
Ubuntu 安装可以完成安装并显示不错的分辨率。

有什么建议我可以解决吗?

正如@Wang指出的,这是解决方案:https://github.com/NixOS/nixpkgs/issues/33284#issuecomment-354672627

现在,如果您使用的是脚本nvidia.run,这可能会有点棘手,因为脚本会提取源代码,运行并在之后擦除源代码。以下是克服它的方法:

  1. sudo ./nvidia.run -x将提取源代码。
  2. 找到解压缩的文件夹。里面,有一个文件[the-extracted-folder]/kernel/nvidia-uvm/uvm8_va_block.c.将#include <linux/sched/task_stack.h>添加到顶部。
  3. sudo [the-extracted-folder]/nvidia-installer安装驱动程序。

然后,你应该很高兴。

这是一个已知问题:

#include <linux/sched/task_stack.h>kernel/nvidia-uvm/uvm8_va_block.c应该可以解决问题。

提取使用

sudo sh cuda_9.1.85_387.26_linux.run --extract=$home/Downloads/cuda

相关内容

  • 没有找到相关文章

最新更新