这个项目能做什么
本仓库包含 NVIDIA Linux 开放 GPU 内核模块的源代码发布,其中包括 nvidia.ko、nvidia-drm.ko、nvidia-modeset.ko 和 nvidia-uvm.ko 的内核接口层。在移除现有 NVIDIA 内核模块后,使用“make modules”构建模块,并使用“make modules_install”安装。这些模块必须与来自匹配的 615.71.09 版本的 GSP 固件和用户空间 NVIDIA 驱动组件一起使用;对应的 .run 安装程序可以带 --no-kernel-modules 参数运行,以提供这些组件。
源代码支持针对 x86_64 和 aarch64 的本机构建或交叉构建。交叉编译使用 TARGET_ARCH 以及 CC、LD、AR、CXX 和 OBJCOPY 设置。可以使用现代 GCC 或 Clang,但内核接口层必须使用与目标内核相同的工具链进行构建。支持的 Linux 内核从 4.15 开始。构建选项包括 NV_VERBOSE=1(用于输出完整命令)和 DEBUG=1(用于调试构建和额外日志记录)。
代码组织为:kernel-open 包含 Linux 特定的内核接口代码,src 包含与操作系统无关的代码和共享实用程序,nouveau 包含一个 Python 脚本,用于提取 GSP 固件映像及相关数据,供 Nouveau 驱动使用。README 说明 nvidia.ko 和 nvidia-modeset.ko 具有与操作系统无关的组件,而 nvidia-drm.ko 和 nvidia-uvm.ko 则没有。
兼容硬件描述为 Turing 或更新架构的 NVIDIA GPU,仓库中提供了 PCI ID 表。功能限制和 vGPU 详情请参阅 NVIDIA 的驱动文档。贡献通过 GitHub 拉取请求处理,并需要签署 CLA。NVIDIA 指出,该仓库在很大程度上是共享专有驱动代码的按驱动版本快照,因此历史记录可能有限,大型重构可能需要协调。问题可以在 GitHub、NVIDIA 的 Linux 论坛或 linux-bugs@nvidia.com 上报告,SECURITY.md 涵盖了漏洞报告流程。
评论
0 评分人数达到10人后显示
登录后参与讨论。