pop-os / cosmic-comp

Compositor for the COSMIC desktop environment
GNU General Public License v3.0
489 stars 93 forks source link

[Bug] Desktop Environment restarts when swapping window #924

Open zeroishero opened 2 months ago

zeroishero commented 2 months ago

https://github.com/user-attachments/assets/4d9c680f-53bd-49ac-a499-ff4bb382ecb7

Press Super + X, right window becomes small pop up. swap left window to right. Try to move pop up window to left.

It crashes and restarts with empty workspace.

leviport commented 2 months ago

I've been able to recreate this as well. To be more specific, dragging with the mouse when the Super + X swap UI is showing.

I found the following output in my journal logs when the crash happened: ``` Sep 20 08:14:21 levioryx cosmic-comp[4216]: thread 'surface-eDP-1' panicked at 'internal error: entered unreachable code': src/shell/layout/tiling/mod.rs:5163 0: 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: Sep 20 08:14:22 levioryx cosmic-comp[4216]: thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: NodeIdNoLongerValid': src/shell/layout/tiling/mod.rs:864 0: 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: __libc_start_main 20: Sep 20 08:14:24 levioryx kernel: [UFW BLOCK] IN=wlp0s20f3 OUT= MAC=b0:3c:dc:82:33:68:fc:34:97:83:e0:28:08:00 SRC=192.168.1.1 DST=224.0.0.1 LEN=36 TOS=0x00 PREC=0x00 TTL=1 ID=10717 DF PROTO=2 Sep 20 08:14:24 levioryx evolution-alarm[4334]: Error reading events from display: Broken pipe Sep 20 08:14:24 levioryx nm-applet[4411]: Error reading events from display: Broken pipe Sep 20 08:14:24 levioryx xdg-desktop-por[4555]: Error reading events from display: Broken pipe Sep 20 08:14:24 levioryx xdg-desktop-por[4485]: Error reading events from display: Broken pipe Sep 20 08:14:24 levioryx cosmic-session[4162]: Io error: Broken pipe (os error 32) Sep 20 08:14:24 levioryx unknown[4360]: Error reading events from display: Broken pipe Sep 20 08:14:24 levioryx cosmic-panel[4274]: com.system76.CosmicAppletTime: Io error: Broken pipe (os error 32) Sep 20 08:14:24 levioryx cosmic-panel[4274]: com.system76.CosmicAppletTime: thread '' panicked at /build/cosmic-applets-PcZqNZ/cosmic-applets-0.1.0~1726494023~22.04~0a32d27/vendor/libcosmic/src/applet/token/waylan> Sep 20 08:14:24 levioryx cosmic-panel[4274]: com.system76.CosmicAppletTime: called `Result::unwrap()` on an `Err` value: OtherError(IoError(Os { code: 32, kind: BrokenPipe, message: "Broken pipe" })) Sep 20 08:14:24 levioryx cosmic-panel[4274]: com.system76.CosmicAppletTime: stack backtrace: Sep 20 08:14:24 levioryx cosmic-panel[4274]: com.system76.CosmicAppletAudio: Io error: Broken pipe (os error 32) Sep 20 08:14:24 levioryx cosmic-panel[4274]: com.system76.CosmicAppletAudio: thread '' panicked at /build/cosmic-applets-PcZqNZ/cosmic-applets-0.1.0~1726494023~22.04~0a32d27/vendor/libcosmic/src/applet/token/wayla> Sep 20 08:14:24 levioryx cosmic-panel[4274]: com.system76.CosmicAppletAudio: called `Result::unwrap()` on an `Err` value: OtherError(IoError(Os { code: 32, kind: BrokenPipe, message: "Broken pipe" })) Sep 20 08:14:24 levioryx cosmic-panel[4274]: com.system76.CosmicAppletAudio: stack backtrace: Sep 20 08:14:24 levioryx cosmic-panel[4274]: com.system76.CosmicAppletBattery: Io error: Broken pipe (os error 32) Sep 20 08:14:24 levioryx cosmic-panel[4274]: com.system76.CosmicAppletBattery: thread '' panicked at /build/cosmic-applets-PcZqNZ/cosmic-applets-0.1.0~1726494023~22.04~0a32d27/vendor/libcosmic/src/applet/token/way> Sep 20 08:14:24 levioryx cosmic-panel[4274]: com.system76.CosmicAppletBattery: called `Result::unwrap()` on an `Err` value: OtherError(IoError(Os { code: 32, kind: BrokenPipe, message: "Broken pipe" })) Sep 20 08:14:24 levioryx cosmic-panel[4274]: com.system76.CosmicAppletBattery: stack backtrace: Sep 20 08:14:24 levioryx cosmic-panel[4274]: com.system76.CosmicAppList: Io error: Broken pipe (os error 32) Sep 20 08:14:24 levioryx cosmic-panel[4274]: com.system76.CosmicAppList: thread '' panicked at cosmic-app-list/src/wayland_handler.rs:719:50: Sep 20 08:14:24 levioryx cosmic-panel[4274]: com.system76.CosmicAppList: called `Result::unwrap()` on an `Err` value: OtherError(IoError(Os { code: 32, kind: BrokenPipe, message: "Broken pipe" })) Sep 20 08:14:24 levioryx cosmic-panel[4274]: com.system76.CosmicAppList: stack backtrace: Sep 20 08:14:24 levioryx cosmic-panel[4274]: com.system76.CosmicAppletTiling: Io error: Broken pipe (os error 32) Sep 20 08:14:24 levioryx cosmic-panel[4274]: com.system76.CosmicAppletTiling: thread '' panicked at cosmic-applet-tiling/src/wayland.rs:151:55: Sep 20 08:14:24 levioryx cosmic-panel[4274]: com.system76.CosmicAppletTiling: called `Result::unwrap()` on an `Err` value: OtherError(IoError(Os { code: 32, kind: BrokenPipe, message: "Broken pipe" })) Sep 20 08:14:24 levioryx cosmic-panel[4274]: com.system76.CosmicAppletTiling: stack backtrace: Sep 20 08:14:24 levioryx cosmic-panel[4274]: com.system76.CosmicAppletBluetooth: Io error: Broken pipe (os error 32) Sep 20 08:14:24 levioryx cosmic-panel[4274]: com.system76.CosmicAppletBluetooth: thread '' panicked at /build/cosmic-applets-PcZqNZ/cosmic-applets-0.1.0~1726494023~22.04~0a32d27/vendor/libcosmic/src/applet/token/w> Sep 20 08:14:24 levioryx cosmic-panel[4274]: com.system76.CosmicAppletBluetooth: called `Result::unwrap()` on an `Err` value: OtherError(IoError(Os { code: 32, kind: BrokenPipe, message: "Broken pipe" })) Sep 20 08:14:24 levioryx cosmic-panel[4274]: com.system76.CosmicAppletBluetooth: stack backtrace: Sep 20 08:14:24 levioryx cosmic-panel[4274]: com.system76.CosmicAppletWorkspaces: Io error: Broken pipe (os error 32) Sep 20 08:14:24 levioryx cosmic-panel[4274]: com.system76.CosmicAppletWorkspaces: thread '' panicked at cosmic-applet-workspaces/src/wayland.rs:192:55: Sep 20 08:14:24 levioryx cosmic-panel[4274]: com.system76.CosmicAppletWorkspaces: called `Result::unwrap()` on an `Err` value: OtherError(IoError(Os { code: 32, kind: BrokenPipe, message: "Broken pipe" })) Sep 20 08:14:24 levioryx cosmic-panel[4274]: com.system76.CosmicAppletWorkspaces: stack backtrace: Sep 20 08:14:24 levioryx cosmic-panel[4274]: com.system76.CosmicAppletNetwork: Io error: Broken pipe (os error 32) Sep 20 08:14:24 levioryx cosmic-panel[4274]: com.system76.CosmicAppletNetwork: thread '' panicked at /build/cosmic-applets-PcZqNZ/cosmic-applets-0.1.0~1726494023~22.04~0a32d27/vendor/libcosmic/src/applet/token/way> Sep 20 08:14:24 levioryx cosmic-panel[4274]: com.system76.CosmicAppletNetwork: called `Result::unwrap()` on an `Err` value: OtherError(IoError(Os { code: 32, kind: BrokenPipe, message: "Broken pipe" })) Sep 20 08:14:24 levioryx cosmic-panel[4274]: com.system76.CosmicAppletNetwork: stack backtrace: Sep 20 08:14:24 levioryx cosmic-panel[4274]: com.system76.CosmicAppletNotifications: Io error: Broken pipe (os error 32) Sep 20 08:14:24 levioryx cosmic-panel[4274]: com.system76.CosmicAppletNotifications: thread '' panicked at /build/cosmic-applets-PcZqNZ/cosmic-applets-0.1.0~1726494023~22.04~0a32d27/vendor/libcosmic/src/applet/tok> Sep 20 08:14:24 levioryx cosmic-panel[4274]: com.system76.CosmicAppletNotifications: called `Result::unwrap()` on an `Err` value: OtherError(IoError(Os { code: 32, kind: BrokenPipe, message: "Broken pipe" })) Sep 20 08:14:24 levioryx cosmic-panel[4274]: com.system76.CosmicAppletNotifications: stack backtrace: Sep 20 08:14:24 levioryx systemd[4141]: app-nm\x2dapplet@autostart.service: Main process exited, code=exited, status=1/FAILURE Sep 20 08:14:24 levioryx systemd[4141]: app-nm\x2dapplet@autostart.service: Failed with result 'exit-code'. Sep 20 08:14:24 levioryx systemd[4141]: app-org.gnome.Evolution\x2dalarm\x2dnotify@autostart.service: Main process exited, code=exited, status=1/FAILURE Sep 20 08:14:24 levioryx systemd[4141]: app-org.gnome.Evolution\x2dalarm\x2dnotify@autostart.service: Failed with result 'exit-code'. Sep 20 08:14:24 levioryx systemd[4141]: app-solaar@autostart.service: Main process exited, code=exited, status=1/FAILURE Sep 20 08:14:24 levioryx systemd[4141]: app-solaar@autostart.service: Failed with result 'exit-code'. Sep 20 08:14:24 levioryx systemd[4141]: xdg-desktop-portal-gnome.service: Main process exited, code=exited, status=1/FAILURE Sep 20 08:14:24 levioryx systemd[4141]: xdg-desktop-portal-gnome.service: Failed with result 'exit-code'. Sep 20 08:14:24 levioryx cosmic-session[4162]: process ' COSMIC_SESSION_SOCK=12 cosmic-comp ' failed with code 101 Sep 20 08:14:24 levioryx cosmic-session[4162]: cosmic-comp exited with error code 101 Sep 20 08:14:24 levioryx cosmic-session[4162]: draining stdin receiver before restarting process Sep 20 08:14:24 levioryx cosmic-session[4162]: sleeping for 0ms before restarting process cosmic-comp (restart 0) Sep 20 08:14:24 levioryx cosmic-session[4162]: process 'ProcessKey(11v1)' cancelled Sep 20 08:14:24 levioryx cosmic-session[4162]: process 'ProcessKey(10v1)' cancelled Sep 20 08:14:24 levioryx cosmic-session[4162]: process 'ProcessKey(9v1)' cancelled Sep 20 08:14:24 levioryx cosmic-session[4162]: process 'ProcessKey(8v1)' cancelled Sep 20 08:14:24 levioryx cosmic-session[4162]: process 'ProcessKey(7v1)' cancelled Sep 20 08:14:24 levioryx cosmic-session[4162]: process 'ProcessKey(6v1)' cancelled Sep 20 08:14:24 levioryx systemd[4141]: xdg-desktop-portal-gtk.service: Main process exited, code=exited, status=1/FAILURE Sep 20 08:14:24 levioryx cosmic-session[4162]: process 'ProcessKey(5v1)' cancelled Sep 20 08:14:24 levioryx systemd[4141]: xdg-desktop-portal-gtk.service: Failed with result 'exit-code'. Sep 20 08:14:24 levioryx cosmic-session[4162]: process 'ProcessKey(4v1)' cancelled Sep 20 08:14:24 levioryx cosmic-session[4162]: process 'ProcessKey(3v1)' cancelled Sep 20 08:14:24 levioryx cosmic-session[4162]: process 'ProcessKey(2v1)' cancelled Sep 20 08:14:24 levioryx cosmic-session[4162]: RESTARTING: session restarted by request Sep 20 08:14:24 levioryx cosmic-session[4162]: restarted process ' COSMIC_SESSION_SOCK=12 cosmic-comp ', now at 1 restarts Sep 20 08:14:24 levioryx cosmic-session[4162]: process 'ProcessKey(1v1)' cancelled Sep 20 08:14:24 levioryx polkitd(authority=local)[1038]: Unregistered Authentication Agent for unix-session:3 (system bus name :1.88, object path /com/system76/CosmicOsd, locale en_US) (disconnected from bus) Sep 20 08:14:24 levioryx agent[4404]: Geolocation service not in use Sep 20 08:14:24 levioryx kernel: Pid 4451(smithay-clipboa) over core_pipe_limit Sep 20 08:14:24 levioryx kernel: Skipping core dump Sep 20 08:14:24 levioryx kernel: Pid 4450(smithay-clipboa) over core_pipe_limit Sep 20 08:14:24 levioryx kernel: Skipping core dump Sep 20 08:14:24 levioryx systemd[4141]: cosmic-workspaces.scope: Consumed 1.410s CPU time. Sep 20 08:14:25 levioryx systemd[1]: Started crash report submission. Sep 20 08:14:25 levioryx whoopsie[9032]: [08:14:25] Using lock path: /var/lock/whoopsie/lock Sep 20 08:14:25 levioryx systemd[1]: whoopsie.service: Deactivated successfully. Sep 20 08:14:26 levioryx systemd[1]: Started crash report submission. Sep 20 08:14:26 levioryx whoopsie[9035]: [08:14:26] Using lock path: /var/lock/whoopsie/lock Sep 20 08:14:26 levioryx systemd[1]: whoopsie.service: Deactivated successfully. Sep 20 08:14:26 levioryx systemd[4141]: Stopped target Cosmic Session Target. Sep 20 08:14:26 levioryx systemd[4141]: Stopped target Startup of XDG autostart applications. Sep 20 08:14:26 levioryx systemd[4141]: Stopping Geoclue Demo agent... Sep 20 08:14:26 levioryx systemd[4141]: Stopping Print Queue Applet... Sep 20 08:14:26 levioryx systemd[4141]: Stopping System76 User Daemon... Sep 20 08:14:26 levioryx cosmic-session[4162]: Restarting Sep 20 08:14:26 levioryx systemd[4141]: Stopping Touchégg... Sep 20 08:14:26 levioryx cosmic-session[4162]: Starting cosmic-session Sep 20 08:14:26 levioryx systemd[4141]: Stopped Touchégg. Sep 20 08:14:26 levioryx systemd[4141]: Stopped Geoclue Demo agent. Sep 20 08:14:26 levioryx systemd[4141]: Stopped System76 User Daemon. Sep 20 08:14:26 levioryx cosmic-session[4162]: starting process ' COSMIC_SESSION_SOCK=12 cosmic-comp ' ```
leviport commented 2 months ago

I think the crash happened in cosmic-session, but we can move this to cosmic-comp (or somewhere else) if that's where it belongs.

zeroishero commented 2 months ago

@leviport Can you move this to cosmic-comp? The bug is due to mouse handling when in overview mode. I am creating PR to cosmic-comp