NVIDIA / NVIDIA/open-gpu-kernel-modules

nvidia-open 610.57.04: suspend hangs with NV_ERR_NO_MEMORY in _memdescAllocInternal (RTX 2070 Super, GSP disabled)

Open
#1,309 0 comments 0 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

610.57.04-6

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

7.1.8-arch1-3

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 2070 Super with Max-Q Design

Describe the bug

When suspending to RAM (S3, deep sleep) while a GPU-intensive Vulkan/OpenGL application (Cemu) is running, the NVIDIA kernel module fails to allocate memory during the suspend transition, logging NVRM: nvCheckOkFailedNoLog: Check failed: Out of memory [NV_ERR_NO_MEMORY] (0x00000051) returned from _memdescAllocInternal(pMemDesc) @ mem_desc.c:1338 immediately after PM: suspend entry (deep).

Rather than failing gracefully, the entire system becomes unresponsive and does not complete the suspend/resume cycle. No further kernel or journal activity is logged until a forced power cycle. Host system RAM and swap were not under pressure at the time (15GB RAM with several GB free, swap nearly empty), and GSP firmware is explicitly disabled

To Reproduce

Preconditions:

  • Laptop with hybrid graphics (NVIDIA + integrated), nvidia-prime installed for PRIME/Optimus configuration
  • NVIDIA Turing GPU (tested on RTX 2070 Super Max-Q, 8GB VRAM)
  • nvidia-open 610.57.04 driver installed and loaded (kernel module, not proprietary)
  • /etc/modprobe.d/nvidia.conf sets NVreg_EnableGpuFirmware=0 (GSP firmware explicitly disabled)
  • NVreg_UseKernelSuspendNotifiers=1 in effect (package default via /usr/lib/modprobe.d/nvidia-sleep.conf)
  • KDE Plasma session on Wayland (kwin_wayland)
  • Kernel 7.1.8 (stable, non-rc)

Steps to reproduce:

  • Boot the system normally with the driver/config above.
  • Launch Cemu and start emulating a game, so it is actively rendering via Vulkan/OpenGL and holding non-trivial VRAM (shader cache, textures, framebuffers).
  • Leave Cemu running and actively rendering for an extended period (reproduced after ~45 minutes of continuous use).
  • Trigger a suspend while Cemu is still running and rendering — either by closing the laptop lid, or via systemctl suspend.
  • Observe the kernel log during the suspend transition: PM: suspend entry (deep) is immediately followed by NVRM: nvCheckOkFailedNoLog: Check failed: Out of memory [NV_ERR_NO_MEMORY] (0x00000051) returned from _memdescAllocInternal(pMemDesc) @ mem_desc.c:1338.
  • The suspend/resume cycle never completes cleanly; the system becomes fully unresponsive (screen does not wake, no further kernel/journal activity), requiring a hard power cycle to recover.
Bug Incidence

Occasionally

nvidia-bug-report.log.gz

nvidia-bug-report.log.gz

More Info

No response

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 with mem_desc.c at the reported line 1338 and the attached nvidia-bug-report.log.gz, then review the suspend configuration involving NVreg_EnableGpuFirmware and NVreg_UseKernelSuspendNotifiers. Reproduce suspend with Cemu actively rendering and confirm that the system completes suspend and resume without the NV_ERR_NO_MEMORY failure or a hang.

Written by the indexing model from the issue text.

Assessment

Tech stack
c, linux
Domain
operating-systems
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.