升级到内核 5.16 后,Nvidia v495 内核无法加载

升级到内核 5.16 后,Nvidia v495 内核无法加载

安装 linux-generic-5.16 后,Nvidia 版本 495.46 显示驱动程序未加载。我使用 删除了一些较旧的内核模块sudo apt autoremove。我使用的显卡是 NVIDIA GeForce RTX 2080 Ti Rev。以下是dmesg

sudo dmesg | grep nvidia
[    0.619407] nvidia-gpu 0000:01:00.3: enabling device (0000 -> 0002)
[    3.869919] audit: type=1400 audit(1642964710.963:7): apparmor="STATUS" operation="profile_load" profile="unconfined" name="nvidia_modprobe" pid=947 comm="apparmor_parser"
[    3.869921] audit: type=1400 audit(1642964710.963:8): apparmor="STATUS" operation="profile_load" profile="unconfined" name="nvidia_modprobe//kmod" pid=947 comm="apparmor_parser"

并且安全启动已从 UEFI 配置中禁用。主板型号为ROG STRIX Z490-I GAMING

答案1

实际上刚刚测试了 5.16。我之前在 Nvidia 尚未完全支持的其他内核上也遇到过这种情况,而且很难修复,但这次很容易解决。

  1. /usr/src/nvidia-495.46/nvidia-uvm/uvm_migrate_pageable.c以 root 身份在您选择的编辑器中打开(我选择nano)。
  2. 搜索MIGRATE_PFN_LOCKED。您将发现两处代码| MIGRATE_PFN_LOCKED在行末读取的情况。
  3. 只需删除这些短语。保留行的其余部分,并保留行末的分号。获取两者,保存并退出编辑器。
  4. 通过编译sudo dkms autoinstall— 现在应该没有错误了。
  5. 重启至 Ⓥictory

我从社区补丁已发布在 nvidia 论坛上,但复制和粘贴比打开文件并手动编辑要困难得多。请使用该帖子作为参考,了解您最终应该得到的结果。

相关内容