** Description changed: [Impact] The Nvidia driver corrupts and/or forgets its textures when resuming from suspend, by design. Documented here: https://www.khronos.org/registry/OpenGL/extensions/NV/NV_robustness_video_memory_purge.txt *NOTE* that this is actually not a common problem because the system must be using Nvidia as the primary GPU to be affected. So generally only desktop users will encounter the bug, not laptops. And even then, only desktops that use suspend/resume or VT switching may trigger it, if ever. - [Workarounds] + Some components of the desktop implement the OpenGL extension which would signal that it is necessary to re-load the textures into memory. + Some other components, namely GTK4 and Flutter applications, do not implement this extension, and thus display graphical artifacts after resuming from suspend. - * Always log into a Xorg session and if corruption occurs then type: - Alt+F2, R, Enter + To address the problem at a driver level, we are going to enable the + driver option "PreserveVideoMemoryAllocations", which saves the GPU + video memory contents to disk before suspending and uploads it back to + the the GPU upon resuming. + + There is no risk of other processes messing with the stored memory + contents, because it is saved to an unlinked file, and only the driver + has its inode open. * https://download.nvidia.com/XFree86/Linux-x86_64/510.54/README/powermanagement.html#PreserveAllVide719f0 + [Test Plan] + 1. Set up Ubuntu 24.04 on a desktop machine with an NVIDIA GPU + 2. Install the driver version being tested, for example: + $ sudo apt install nvidia-driver-570 + 3. Reboot the system + 4. Log-in to Ubuntu + + Ensure that you logged-in to an X.org session, by verifying that + `echo $XDG_SESSION_TYPE` returns the string "x11" + 5. Open Nautilus and App Center + 7. Suspend the machine + 8. Resume + 9. Verify that Nautilus and App Center do not show any graphical artifacts + + [Where problems could occur] + + When testing in Sept 2024, the "PreserveVideoMemoryAllocations" feature was found to be broken on some kernel/driver version combinations. + The driver would crash upon resume, locking the system, possibly even preventing ssh access. The only recovery option would be to forcefully reboot the system. + [Original Bug Report] I recently installed ubuntu 20.04 on my computer, and I am running into an issue when I do the following: * Login with a user on desktop * Select switch user, and login as second user * Switch user again, and return to original user At this point, text and icons in the menubar / sidebar are corrupted. Text and icons in normal windows appear correctly. I have attached a screenshot of what this looks like. Screenshots: https://imgur.com/a/3ZFDLMc ProblemType: Bug DistroRelease: Ubuntu 20.04 Package: xorg 1:7.7+19ubuntu14 ProcVersionSignature: Ubuntu 5.4.0-28.32-generic 5.4.30 Uname: Linux 5.4.0-28-generic x86_64 NonfreeKernelModules: nvidia_modeset nvidia .proc.driver.nvidia.gpus.0000.09.00.0: Error: [Errno 21] Is a directory: '/proc/driver/nvidia/gpus/0000:09:00.0' .proc.driver.nvidia.registry: Binary: "" .proc.driver.nvidia.suspend: suspend hibernate resume .proc.driver.nvidia.suspend_depth: default modeset uvm .proc.driver.nvidia.version: NVRM version: NVIDIA UNIX x86_64 Kernel Module 440.64 Fri Feb 21 01:17:26 UTC 2020 GCC version: ApportVersion: 2.20.11-0ubuntu27 Architecture: amd64 BootLog: Error: [Errno 13] Permission denied: '/var/log/boot.log' CasperMD5CheckResult: skip CompositorRunning: None CurrentDesktop: ubuntu:GNOME Date: Sun May 3 18:12:45 2020 DistUpgraded: Fresh install DistroCodename: focal DistroVariant: ubuntu ExtraDebuggingInterest: Yes GraphicsCard: NVIDIA Corporation GP104 [GeForce GTX 1070] [10de:1b81] (rev a1) (prog-if 00 [VGA controller]) Subsystem: ASUSTeK Computer Inc. GP104 [GeForce GTX 1070] [1043:85a0] InstallationDate: Installed on 2020-05-03 (0 days ago) InstallationMedia: Ubuntu 20.04 LTS "Focal Fossa" - Release amd64 (20200423) MachineType: Gigabyte Technology Co., Ltd. AX370-Gaming ProcEnviron: TERM=xterm-256color PATH=(custom, no user) XDG_RUNTIME_DIR=<set> LANG=en_US.UTF-8 SHELL=/bin/bash ProcKernelCmdLine: BOOT_IMAGE=/vmlinuz-5.4.0-28-generic root=/dev/mapper/vgubuntu-root ro quiet splash vt.handoff=7 SourcePackage: xorg Symptom: display UpgradeStatus: No upgrade log present (probably fresh install) dmi.bios.date: 06/19/2017 dmi.bios.vendor: American Megatrends Inc. dmi.bios.version: F3 dmi.board.asset.tag: Default string dmi.board.name: AX370-Gaming-CF dmi.board.vendor: Gigabyte Technology Co., Ltd. dmi.board.version: se1 dmi.chassis.asset.tag: Default string dmi.chassis.type: 3 dmi.chassis.vendor: Default string dmi.chassis.version: Default string dmi.modalias: dmi:bvnAmericanMegatrendsInc.:bvrF3:bd06/19/2017:svnGigabyteTechnologyCo.,Ltd.:pnAX370-Gaming:pvrDefaultstring:rvnGigabyteTechnologyCo.,Ltd.:rnAX370-Gaming-CF:rvrse1:cvnDefaultstring:ct3:cvrDefaultstring: dmi.product.family: Default string dmi.product.name: AX370-Gaming dmi.product.sku: Default string dmi.product.version: Default string dmi.sys.vendor: Gigabyte Technology Co., Ltd. version.compiz: compiz N/A version.libdrm2: libdrm2 2.4.101-2 version.libgl1-mesa-dri: libgl1-mesa-dri 20.0.4-2ubuntu1 version.libgl1-mesa-glx: libgl1-mesa-glx 20.0.4-2ubuntu1 version.nvidia-graphics-drivers: nvidia-graphics-drivers-* N/A version.xserver-xorg-core: xserver-xorg-core 2:1.20.8-2ubuntu2 version.xserver-xorg-input-evdev: xserver-xorg-input-evdev N/A version.xserver-xorg-video-ati: xserver-xorg-video-ati 1:19.1.0-1 version.xserver-xorg-video-intel: xserver-xorg-video-intel 2:2.99.917+git20200226-1 version.xserver-xorg-video-nouveau: xserver-xorg-video-nouveau 1:1.0.16-1
-- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/1876632 Title: [nvidia] Screen freeze or corrupted/missing textures when switching users, switching VTs or resuming from suspend To manage notifications about this bug go to: https://bugs.launchpad.net/gnome-shell/+bug/1876632/+subscriptions -- ubuntu-bugs mailing list [email protected] https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs
