-
Notifications
You must be signed in to change notification settings - Fork 86
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Maximising window hard freezes Cosmic #887
Comments
Probably related: |
When tty switching keybindings don't work, it's possible to use magic sysrq to enter raw mode, so the kernel will handle the tty switch binding. (On many distros, this requires the
I don't think resolution would be the problem. The GPU model is probably more relevant. Presumably it's an iGPU. Exactly what model of CPU does the system have? Perhaps related to direct scanout. Not sure if there's an easy way to debug, but run a debug build of cosmic-comp, ssh into it from a different system, and attach gdb to the process, to see if I can find what line cosmic-comp is freezing on. (Doing this on a tty, after switching with magic sysrq, may also help). Definitely not the easiest way to test. Does it produce any dmesg errors? |
Not OP, but same issue: OS: Fedora Linux 41 (Workstation Edition) x86_64 The problem doesn't occur with kernel 6.10. |
Is there a way to disable direct scannout? I think direct scannout is causing the issues im having with #868 |
Good point; we should probably have an env var to test without direct scanout, like Anvil. You can try this: diff --git a/src/backend/kms/surface/mod.rs b/src/backend/kms/surface/mod.rs
index d0cfb8d..32aaf4a 100644
--- a/src/backend/kms/surface/mod.rs
+++ b/src/backend/kms/surface/mod.rs
@@ -624,7 +624,8 @@ impl SurfaceThreadState {
cursor_size,
Some(gbm),
) {
- Ok(compositor) => {
+ Ok(mut compositor) => {
+ compositor.use_direct_scanout(false);
self.active.store(true, Ordering::SeqCst);
self.compositor = Some(compositor);
Ok(()) |
I can also reproduce the problem. It seems to happen when maximizing a window (Super+M), swapping a window (Super+X) or when trying to stack 2 windows (Super+U, Super+S). All actions performed in tiling mode. In all cases a version of this stack trace is printed to dmesg and the UI freezes. SSH into the host still works.
Did not see this posted in one of the issues, hope it helps. Maybe a bug in amdgpu? EDIT: |
It appears that maximising any window is causing Cosmic to hard freeze where I have to hard reset the physical machine.
I'm wonder if it is because I am using 3:2 screen on a framework 13 (2880x1920) as this is pretty non-standard and perhaps a calculation is assuming 16:9?
Fedora 41 Beta
cosmic-comp 1.0.0~alpha.2^git20240923afdb656
This happened before I went to Fedora 41 Beta
Alternatively its simply a combination of options I have with the applets.
Is there any debug info I can generate or find?
The text was updated successfully, but these errors were encountered: