When an app goes into full-screen mode, Nvidia driver very frequently crashes and freezes the whole system, requiring a reboot. This did not use to happen, but it has been happening lately (I’m guessing as of 570.144) with a very high probability. I think it’s more likely to happen when the system has been running for some amount of time, because right after it crashes and I reboot, it doesn’t happen a second time.
Examples of apps that have crashed as soon as they switch to full screen:
- No Man’s Sky running via Steam/Proton,
- Remmina RDP client.
When the crash happens, the picture on the screen remains frozen. The system usually remains responsive to Caps Lock (the light toggles when pressing the key) and to Magic SysRq combinations, but there’s no way to get it back into a usable state. Switching to console mode does not work. SysRq+I can sometimes reset the graphics and the picture changes, but the only thing that shows up is some garbled image. Eventually the system completely freezes and stops responding to anything.
I’m using Bazzite with KDE and Wayland.
Relevant logs (captured after rebooting):
nvidia-bug-report.log.gz (686.6 KB)
nvidia_crash_journalctl_boot-1.log (17.0 KB)
nvidia_crash_dmesg.log (106.1 KB)
At the time of the crash this shows up in the log (the Pageflip error keeps repeating):
May 11 19:44:50 muon kwin_wayland[2268]: kwin_scene_opengl: Could not delete texture because no context is current
May 11 19:44:51 muon kwin_wayland[2268]: kwin_wayland_drm: Pageflip timed out! This is a bug in the nvidia-drm kernel driver
May 11 19:44:51 muon kwin_wayland[2268]: kwin_wayland_drm: Please report this at https://forums.developer.nvidia.com/c/gpu-graphics/linux
May 11 19:44:51 muon kwin_wayland[2268]: kwin_wayland_drm: With the output of 'sudo dmesg' and 'journalctl --user-unit plasma-kwin_wayland --boot 0'
However, I can see some critical-looking errors towards the beginning of the log, which could be the cause of the issue and why subsequently there’s a crash the next time I switch to full-screen (this is pure speculation, but it’s worth looking into, given that right after a reboot it tends to not crash).
May 11 00:42:56 muon kwin_wayland[2268]: kf.config.core: "\"restore1\" - conversion of \"-20,79.2,20.799999999999997,20.799999999999997\" to QRect failed"
May 11 00:42:56 muon kwin_wayland[2268]: kf.config.core: "\"fsrestore1\" - conversion of \"0,0,0,0\" to QRect failed"
May 11 00:42:56 muon kwin_wayland[2268]: kf.windowsystem: static bool KX11Extras::mapViewport() may only be used on X11
May 11 00:44:12 muon kwin_wayland[2268]: kf.windowsystem: static bool KX11Extras::mapViewport() may only be used on X11
May 11 00:44:13 muon kwin_wayland[2268]: kf.windowsystem: static bool KX11Extras::mapViewport() may only be used on X11
May 11 00:44:59 muon kwin_wayland[2268]: kf.windowsystem: static bool KX11Extras::mapViewport() may only be used on X11
May 11 00:45:49 muon kwin_wayland[2268]: kf.windowsystem: static bool KX11Extras::mapViewport() may only be used on X11
May 11 00:45:49 muon kwin_wayland[2268]: kwin_scene_opengl: 0x501: GL_INVALID_VALUE error generated. <levels>, <width> and <height> must be 1 or greater.
May 11 00:45:49 muon kwin_wayland[2268]: kwin_scene_opengl: Invalid framebuffer status: "GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT"
May 11 00:45:49 muon kwin_wayland[2268]: kwin_scene_opengl: 0x502: GL_INVALID_OPERATION error generated. Framebuffer name must be generated before being bound.
May 11 00:45:49 muon kwin_wayland[2268]: kwin_scene_opengl: 0x506: GL_INVALID_FRAMEBUFFER_OPERATION error generated. Operation is not valid because a bound framebuffer is not framebuffer complete.
May 11 00:45:49 muon kwin_wayland[2268]: kwin_scene_opengl: 0x501: GL_INVALID_VALUE error generated. <levels>, <width> and <height> must be 1 or greater.
...
May 11 17:07:07 muon kscreenlocker_greet[174907]: qt.qpa.wayland: Could not create EGL surface (EGL error 0x3003)
May 11 17:07:07 muon kscreenlocker_greet[174907]: Failed to write to the pipe: Bad file descriptor.