Skip to content

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

Description

@uddivert

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions