NVIDIA / NVIDIA/open-gpu-kernel-modules

DRM GTT/Shared memory broken in Nvidia Open drivers on Linux

Open
#758 15 comments 41 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug
Dominant language
C
Stars
17.4k
Forks
1.9k
PR merge metrics
No merged PRs in 30d

Description

NVIDIA Open GPU Kernel Modules Version

565.77-1 (but do affect every version of it)

Please confirm this issue does not happen with the proprietary driver (of the same version). This issue tracker is only for bugs specific to the open kernel driver.
  • I confirm that this does not happen with the proprietary driver package.
Operating System and Version

Arch Linux

Kernel Release

6.12.6-arch1-1 (but affects every version of linux kernel, at least all 6.x.x)

Please confirm you are running a stable release kernel (e.g. not a -rc). We do not accept bug reports for unreleased kernels.
  • I am running on a stable kernel release.
Hardware: GPU

NVIDIA GeForce RTX 4060 Laptop GPU (AD107-B)

Describe the bug

Just as described in
#663
#618
https://forums.developer.nvidia.com/t/vram-allocation-issues/239678
https://forums.developer.nvidia.com/t/non-existent-shared-vram-on-nvidia-linux-drivers/260304

The standard DRM functionality GTT support is broken in nvidia-open modules and that made it impossible to use Shared Memory in Linux with nvidia gpus.
That's not a minor missing feature, but a major functional bug which strongly affected every Linux user with a Nvidia gpu.
#663 is closed in error, as described by @martynhare in #663#issuecomment-2487194834, so it's kinda wierd for you to ignore it when this caused a lot of games, Xorg, wayland, pytorch and many other ai related stuffs to crash and complain when there's absolutely enough RAM for them.

To Reproduce

Just use the latest edition of nvidia-open module, and it exists there.
nvidia-uvm won't help at all, and it's hard to find something using uvm in 2024.
Many ai stuffs doesn't support uvm at all, or has a uvm branch which is unmaintained for years.
For games, well, nvidia-uvm is only for cuda. Some of them can use dxvk which support to use system ram, but it's not a general solution and didn't fixed the problem at all.

Bug Incidence

Always

nvidia-bug-report.log.gz

nvidia-bug-report.log.gz doesn't help at all. It's a wide-affected bug in every version of nvidia-open in any environment.

Since a bot will close the issues without a nvidia-bug-report.log.gz, I'll upload a dummy one.
nvidia-bug-report.log.gz

More Info

Please fix this bug, it existed for years and caused pain on plenty of linux users who owns a nvidia gpu.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reviewing the related reports in #663 and #618, then reproduce the failure with the nvidia-open module on Linux using the reported kernel and GPU. Trace the DRM GTT/shared-memory path implicated by the reproduction; done means shared memory works reliably for the reported games, display systems, and AI workloads without requiring nvidia-uvm.

Written by the indexing model from the issue text.

Assessment

Tech stack
c, linux
Domain
operating-systems
Issue type
Bug
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.