Skip to content
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

Notifications originating on another workspace cause crashes #139

Closed
1 of 3 tasks
wout opened this issue Jul 7, 2021 · 102 comments
Closed
1 of 3 tasks

Notifications originating on another workspace cause crashes #139

wout opened this issue Jul 7, 2021 · 102 comments

Comments

@wout
Copy link
Sponsor

wout commented Jul 7, 2021

Prerequisites

  • I have searched open and closed issues for duplicates.

Describe the bug

I'm using Odin Beta 2 on my laptop for a week now and noticed at least five crashes on workspaces where the windows are in full or split-screen mode. This happens mostly when a notification occurs while moving between workspaces.

The crash sometimes results in all windows from all workspaces moving to the current workspace. But other times it results in all full and split-screen windows being over-scaled (from the looks of it, by the height of the main top panel).

At the moment of the crash, everything freezes for a second or two and most importantly, the notification doesn't appear on the top right but on the top left of the screen.

To switch workspaces, I use all available methods:

  • command + numbers
  • command + arrows
  • gestures

To Reproduce

Steps to reproduce the behavior:

  1. While receiving a notification...
  2. Switch to a full or split-screen workspace

Note: it's hard to reproduce.

Screenshots or screen recordings

I'll try to take a screenshot the next time it happens.

Logs

I'll report those when it happens again.

Platform Information

image
image

  • I'm using the latest version from git that I've manually compiled
  • I'm using the latest released stable version

Additional context

Using a single 4k monitor in HiDPI mode (3840 x 2160 @ 60 Hz).

@wout
Copy link
Sponsor Author

wout commented Jul 8, 2021

It just happened again when I was working on a split-screen workspace. I couldn't take a screenshot, but found this in the syslog:

Jul  8 14:01:14 Rossy kernel: [63001.396238] gala[21731]: segfault at 21c ip 00007f696da3aa04 sp 00007fff6f5327a8 error 4 in libmutter-6.so.0.0.0[7f696d9b3000+fe000]
Jul  8 14:01:14 Rossy kernel: [63001.396249] Code: 0f af c0 01 f8 41 89 44 24 0c 48 83 c4 08 4c 89 e2 4c 89 e6 48 89 ef 5d 41 5c e9 97 fd ff ff 0f 1f 80 00 00 00 00 f3 0f 1e fa <f3> 0f 6f 87 1c 02 00 00 0f 11 06 c3 f3 0f 1e fa 41 55 41 54 49 89
Jul  8 14:01:14 Rossy gnome-session[1536]: gnome-session-binary[1536]: WARNING: Application 'gala.desktop' killed by signal 11
Jul  8 14:01:14 Rossy gnome-session-binary[1536]: WARNING: Application 'gala.desktop' killed by signal 11
Jul  8 14:01:15 Rossy touchegg[818]: New client connection request
Jul  8 14:01:15 Rossy touchegg[818]: New client connected
Jul  8 14:01:15 Rossy gala.desktop[33817]: Window manager warning: Trying to re-add keybinding "switch-to-workspace-last".
Jul  8 14:01:15 Rossy gala.desktop[33817]: Window manager warning: Trying to re-add keybinding "move-to-workspace-last".
Jul  8 14:01:15 Rossy gala[33817]: clutter_actor_get_n_children: assertion 'CLUTTER_IS_ACTOR (self)' failed
Jul  8 14:01:15 Rossy gala[33817]: gala_drag_drop_action_get_dragging: assertion 'self != NULL' failed
Jul  8 14:01:15 Rossy gala[33817]: clutter_actor_get_n_children: assertion 'CLUTTER_IS_ACTOR (self)' failed
Jul  8 14:01:15 Rossy gala[33817]: gala_drag_drop_action_get_dragging: assertion 'self != NULL' failed
Jul  8 14:01:15 Rossy gala[33817]: clutter_actor_get_n_children: assertion 'CLUTTER_IS_ACTOR (self)' failed
Jul  8 14:01:15 Rossy gala[33817]: gala_drag_drop_action_get_dragging: assertion 'self != NULL' failed
Jul  8 14:01:15 Rossy gala[33817]: clutter_actor_get_n_children: assertion 'CLUTTER_IS_ACTOR (self)' failed
Jul  8 14:01:15 Rossy gala[33817]: gala_drag_drop_action_get_dragging: assertion 'self != NULL' failed
Jul  8 14:01:15 Rossy gala[33817]: clutter_actor_get_n_children: assertion 'CLUTTER_IS_ACTOR (self)' failed
Jul  8 14:01:15 Rossy gala[33817]: gala_drag_drop_action_get_dragging: assertion 'self != NULL' failed
Jul  8 14:01:15 Rossy gala[33817]: Preferences.vala:192: '/usr/share/themes/io.elementary.stylesheet.bubblegum/plank/dock.theme' is read-only!
Jul  8 14:01:15 Rossy gala[33817]: Preferences.vala:378: Missing key 'UrgentHueShift' for group 'PlankDockTheme' in preferences file '/usr/share/themes/io.elementary.stylesheet.bubblegum/plank/dock.theme' - using default value
Jul  8 14:01:15 Rossy gala[33817]: meta_sound_player_play_from_theme: assertion 'META_IS_SOUND_PLAYER (player)' failed
Jul  8 14:01:15 Rossy gsd-media-keys[1676]: Failed to grab accelerator for keybinding settings:rfkill
Jul  8 14:01:15 Rossy gsd-media-keys[1676]: Failed to grab accelerator for keybinding settings:hibernate
Jul  8 14:01:15 Rossy gsd-media-keys[1676]: Failed to grab accelerator for keybinding settings:magnifier
Jul  8 14:01:15 Rossy gsd-media-keys[1676]: Failed to grab accelerator for keybinding settings:playback-repeat
Jul  8 14:01:15 Rossy gsd-media-keys[1676]: Failed to grab accelerator for keybinding settings:playback-random
Jul  8 14:01:16 Rossy gala[33817]: clutter_actor_remove_child: assertion 'CLUTTER_IS_ACTOR (child)' failed
Jul  8 14:01:16 Rossy gala[33817]: invalid (NULL) pointer instance
Jul  8 14:01:16 Rossy gala[33817]: g_signal_connect_data: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed
Jul  8 14:01:16 Rossy gala[33817]: clutter_actor_remove_child: assertion 'CLUTTER_IS_ACTOR (child)' failed
Jul  8 14:01:16 Rossy gala[33817]: invalid (NULL) pointer instance
Jul  8 14:01:16 Rossy gala[33817]: g_signal_connect_data: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed
Jul  8 14:01:16 Rossy gala[33817]: clutter_actor_remove_child: assertion 'CLUTTER_IS_ACTOR (child)' failed
Jul  8 14:01:16 Rossy gala[33817]: invalid (NULL) pointer instance
Jul  8 14:01:16 Rossy gala[33817]: g_signal_connect_data: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed
Jul  8 14:01:16 Rossy gala[33817]: clutter_actor_remove_child: assertion 'CLUTTER_IS_ACTOR (child)' failed
Jul  8 14:01:16 Rossy gala[33817]: invalid (NULL) pointer instance
Jul  8 14:01:16 Rossy gala[33817]: g_signal_connect_data: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed
Jul  8 14:01:16 Rossy gala[33817]: clutter_actor_remove_child: assertion 'CLUTTER_IS_ACTOR (child)' failed
Jul  8 14:01:16 Rossy gala[33817]: invalid (NULL) pointer instance
Jul  8 14:01:16 Rossy gala[33817]: g_signal_connect_data: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed
Jul  8 14:01:16 Rossy gala[33817]: clutter_actor_remove_child: assertion 'CLUTTER_IS_ACTOR (child)' failed
Jul  8 14:01:16 Rossy gala[33817]: invalid (NULL) pointer instance
Jul  8 14:01:16 Rossy gala[33817]: g_signal_connect_data: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed
Jul  8 14:01:22 Rossy touchegg[818]: Client disconnected
Jul  8 14:01:22 Rossy gala[33817]: clutter_actor_set_easing_mode: assertion 'mode != CLUTTER_CUSTOM_MODE' failed
Jul  8 14:01:22 Rossy gala[33817]: clutter_actor_set_easing_mode: assertion 'mode != CLUTTER_CUSTOM_MODE' failed
Jul  8 14:01:23 Rossy systemd[1522]: run-docker-runtime\x2drunc-moby-b185131b0f233f4dfa84bee4db1763c7ecd428df5c74a52fe8e4281b476ba9f1-runc.1ZmMnS.mount: Succeeded.
Jul  8 14:01:23 Rossy systemd[1]: run-docker-runtime\x2drunc-moby-b185131b0f233f4dfa84bee4db1763c7ecd428df5c74a52fe8e4281b476ba9f1-runc.1ZmMnS.mount: Succeeded.
Jul  8 14:01:26 Rossy systemd[1522]: run-docker-runtime\x2drunc-moby-b185131b0f233f4dfa84bee4db1763c7ecd428df5c74a52fe8e4281b476ba9f1-runc.OVxt1m.mount: Succeeded.
Jul  8 14:01:26 Rossy systemd[1]: run-docker-runtime\x2drunc-moby-b185131b0f233f4dfa84bee4db1763c7ecd428df5c74a52fe8e4281b476ba9f1-runc.OVxt1m.mount: Succeeded.
Jul  8 14:01:35 Rossy gala.desktop[33817]: Window manager warning: META_CURRENT_TIME used to choose focus window; focus window may not be correct.

I wasn't switching workspaces, just writing some code in SublimeText while it happened.

@wout
Copy link
Sponsor Author

wout commented Jul 8, 2021

And another one:

Jul  8 17:02:44 Rossy kernel: [73891.396788] gala[33817]: segfault at 21c ip 00007fe91c229a04 sp 00007fff26e39ee8 error 4 in libmutter-6.so.0.0.0[7fe91c1a2000+fe000]
Jul  8 17:02:44 Rossy kernel: [73891.396794] Code: 0f af c0 01 f8 41 89 44 24 0c 48 83 c4 08 4c 89 e2 4c 89 e6 48 89 ef 5d 41 5c e9 97 fd ff ff 0f 1f 80 00 00 00 00 f3 0f 1e fa <f3> 0f 6f 87 1c 02 00 00 0f 11 06 c3 f3 0f 1e fa 41 55 41 54 49 89
Jul  8 17:02:44 Rossy gnome-session[1536]: gnome-session-binary[1536]: WARNING: Application 'gala.desktop' killed by signal 11
Jul  8 17:02:44 Rossy gnome-session-binary[1536]: WARNING: Application 'gala.desktop' killed by signal 11
Jul  8 17:02:45 Rossy touchegg[818]: New client connection request
Jul  8 17:02:45 Rossy touchegg[818]: New client connected
Jul  8 17:02:45 Rossy gala.desktop[98811]: Window manager warning: Trying to re-add keybinding "switch-to-workspace-last".
Jul  8 17:02:45 Rossy gala.desktop[98811]: Window manager warning: Trying to re-add keybinding "move-to-workspace-last".
Jul  8 17:02:45 Rossy gala[98811]: clutter_actor_get_n_children: assertion 'CLUTTER_IS_ACTOR (self)' failed
Jul  8 17:02:45 Rossy gala[98811]: gala_drag_drop_action_get_dragging: assertion 'self != NULL' failed
Jul  8 17:02:45 Rossy gala[98811]: clutter_actor_get_n_children: assertion 'CLUTTER_IS_ACTOR (self)' failed
Jul  8 17:02:45 Rossy gala[98811]: gala_drag_drop_action_get_dragging: assertion 'self != NULL' failed
Jul  8 17:02:45 Rossy gala[98811]: clutter_actor_get_n_children: assertion 'CLUTTER_IS_ACTOR (self)' failed
Jul  8 17:02:45 Rossy gala[98811]: gala_drag_drop_action_get_dragging: assertion 'self != NULL' failed
Jul  8 17:02:45 Rossy gala[98811]: clutter_actor_get_n_children: assertion 'CLUTTER_IS_ACTOR (self)' failed
Jul  8 17:02:45 Rossy gala[98811]: gala_drag_drop_action_get_dragging: assertion 'self != NULL' failed
Jul  8 17:02:45 Rossy gala[98811]: clutter_actor_get_n_children: assertion 'CLUTTER_IS_ACTOR (self)' failed
Jul  8 17:02:45 Rossy gala[98811]: gala_drag_drop_action_get_dragging: assertion 'self != NULL' failed
Jul  8 17:02:45 Rossy gala[98811]: clutter_actor_get_n_children: assertion 'CLUTTER_IS_ACTOR (self)' failed
Jul  8 17:02:45 Rossy gala[98811]: gala_drag_drop_action_get_dragging: assertion 'self != NULL' failed
Jul  8 17:02:45 Rossy gala[98811]: clutter_actor_get_n_children: assertion 'CLUTTER_IS_ACTOR (self)' failed
Jul  8 17:02:45 Rossy gala[98811]: gala_drag_drop_action_get_dragging: assertion 'self != NULL' failed
Jul  8 17:02:45 Rossy gala[98811]: Preferences.vala:192: '/usr/share/themes/io.elementary.stylesheet.bubblegum/plank/dock.theme' is read-only!
Jul  8 17:02:45 Rossy gala[98811]: Preferences.vala:378: Missing key 'UrgentHueShift' for group 'PlankDockTheme' in preferences file '/usr/share/themes/io.elementary.stylesheet.bubblegum/plank/dock.theme' - using default value
Jul  8 17:02:45 Rossy gala[98811]: meta_sound_player_play_from_theme: assertion 'META_IS_SOUND_PLAYER (player)' failed
Jul  8 17:02:46 Rossy gsd-media-keys[1676]: Failed to grab accelerator for keybinding settings:magnifier
Jul  8 17:02:46 Rossy gsd-media-keys[1676]: Failed to grab accelerator for keybinding settings:playback-random
Jul  8 17:02:46 Rossy gsd-media-keys[1676]: Failed to grab accelerator for keybinding settings:playback-repeat
Jul  8 17:02:46 Rossy gsd-media-keys[1676]: Failed to grab accelerator for keybinding settings:rfkill
Jul  8 17:02:46 Rossy gsd-media-keys[1676]: Failed to grab accelerator for keybinding settings:hibernate
Jul  8 17:02:46 Rossy gala[98811]: clutter_actor_remove_child: assertion 'CLUTTER_IS_ACTOR (child)' failed
Jul  8 17:02:46 Rossy gala[98811]: invalid (NULL) pointer instance
Jul  8 17:02:46 Rossy gala[98811]: g_signal_connect_data: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed
Jul  8 17:02:46 Rossy gala[98811]: clutter_actor_remove_child: assertion 'CLUTTER_IS_ACTOR (child)' failed
Jul  8 17:02:46 Rossy gala[98811]: invalid (NULL) pointer instance
Jul  8 17:02:46 Rossy gala[98811]: g_signal_connect_data: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed
Jul  8 17:02:46 Rossy gala[98811]: clutter_actor_remove_child: assertion 'CLUTTER_IS_ACTOR (child)' failed
Jul  8 17:02:46 Rossy gala[98811]: invalid (NULL) pointer instance
Jul  8 17:02:46 Rossy gala[98811]: g_signal_connect_data: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed
Jul  8 17:02:46 Rossy gala[98811]: clutter_actor_remove_child: assertion 'CLUTTER_IS_ACTOR (child)' failed
Jul  8 17:02:46 Rossy gala[98811]: invalid (NULL) pointer instance
Jul  8 17:02:46 Rossy gala[98811]: g_signal_connect_data: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed
Jul  8 17:02:46 Rossy gala[98811]: clutter_actor_remove_child: assertion 'CLUTTER_IS_ACTOR (child)' failed
Jul  8 17:02:46 Rossy gala[98811]: invalid (NULL) pointer instance
Jul  8 17:02:46 Rossy gala[98811]: g_signal_connect_data: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed
Jul  8 17:02:46 Rossy gala[98811]: clutter_actor_remove_child: assertion 'CLUTTER_IS_ACTOR (child)' failed
Jul  8 17:02:46 Rossy gala[98811]: invalid (NULL) pointer instance
Jul  8 17:02:46 Rossy gala[98811]: g_signal_connect_data: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed
Jul  8 17:02:46 Rossy gala[98811]: clutter_actor_remove_child: assertion 'CLUTTER_IS_ACTOR (child)' failed
Jul  8 17:02:46 Rossy gala[98811]: invalid (NULL) pointer instance
Jul  8 17:02:46 Rossy gala[98811]: g_signal_connect_data: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed
Jul  8 17:02:46 Rossy gala[98811]: clutter_actor_remove_child: assertion 'CLUTTER_IS_ACTOR (child)' failed
Jul  8 17:02:46 Rossy gala[98811]: invalid (NULL) pointer instance
Jul  8 17:02:46 Rossy gala[98811]: g_signal_connect_data: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed
Jul  8 17:02:56 Rossy gala[98811]: clutter_actor_remove_child: assertion 'CLUTTER_IS_ACTOR (child)' failed
Jul  8 17:02:56 Rossy gala[98811]: invalid (NULL) poiJul  8 17:02:44 Rossy kernel: [73891.396788] gala[33817]: segfault at 21c ip 00007fe91c229a04 sp 00007fff26e39ee8 error 4 in libmutter-6.so.0.0.0[7fe91c1a2000+fe000]
Jul  8 17:02:44 Rossy kernel: [73891.396794] Code: 0f af c0 01 f8 41 89 44 24 0c 48 83 c4 08 4c 89 e2 4c 89 e6 48 89 ef 5d 41 5c e9 97 fd ff ff 0f 1f 80 00 00 00 00 f3 0f 1e fa <f3> 0f 6f 87 1c 02 00 00 0f 11 06 c3 f3 0f 1e fa 41 55 41 54 49 89
Jul  8 17:02:44 Rossy gnome-session[1536]: gnome-session-binary[1536]: WARNING: Application 'gala.desktop' killed by signal 11
Jul  8 17:02:44 Rossy gnome-session-binary[1536]: WARNING: Application 'gala.desktop' killed by signal 11
Jul  8 17:02:45 Rossy touchegg[818]: New client connection request
Jul  8 17:02:45 Rossy touchegg[818]: New client connected
Jul  8 17:02:45 Rossy gala.desktop[98811]: Window manager warning: Trying to re-add keybinding "switch-to-workspace-last".
Jul  8 17:02:45 Rossy gala.desktop[98811]: Window manager warning: Trying to re-add keybinding "move-to-workspace-last".
Jul  8 17:02:45 Rossy gala[98811]: clutter_actor_get_n_children: assertion 'CLUTTER_IS_ACTOR (self)' failed
Jul  8 17:02:45 Rossy gala[98811]: gala_drag_drop_action_get_dragging: assertion 'self != NULL' failed
Jul  8 17:02:45 Rossy gala[98811]: clutter_actor_get_n_children: assertion 'CLUTTER_IS_ACTOR (self)' failed
Jul  8 17:02:45 Rossy gala[98811]: gala_drag_drop_action_get_dragging: assertion 'self != NULL' failed
Jul  8 17:02:45 Rossy gala[98811]: clutter_actor_get_n_children: assertion 'CLUTTER_IS_ACTOR (self)' failed
Jul  8 17:02:45 Rossy gala[98811]: gala_drag_drop_action_get_dragging: assertion 'self != NULL' failed
Jul  8 17:02:45 Rossy gala[98811]: clutter_actor_get_n_children: assertion 'CLUTTER_IS_ACTOR (self)' failed
Jul  8 17:02:45 Rossy gala[98811]: gala_drag_drop_action_get_dragging: assertion 'self != NULL' failed
Jul  8 17:02:45 Rossy gala[98811]: clutter_actor_get_n_children: assertion 'CLUTTER_IS_ACTOR (self)' failed
Jul  8 17:02:45 Rossy gala[98811]: gala_drag_drop_action_get_dragging: assertion 'self != NULL' failed
Jul  8 17:02:45 Rossy gala[98811]: clutter_actor_get_n_children: assertion 'CLUTTER_IS_ACTOR (self)' failed
Jul  8 17:02:45 Rossy gala[98811]: gala_drag_drop_action_get_dragging: assertion 'self != NULL' failed
Jul  8 17:02:45 Rossy gala[98811]: clutter_actor_get_n_children: assertion 'CLUTTER_IS_ACTOR (self)' failed
Jul  8 17:02:45 Rossy gala[98811]: gala_drag_drop_action_get_dragging: assertion 'self != NULL' failed
Jul  8 17:02:45 Rossy gala[98811]: Preferences.vala:192: '/usr/share/themes/io.elementary.stylesheet.bubblegum/plank/dock.theme' is read-only!
Jul  8 17:02:45 Rossy gala[98811]: Preferences.vala:378: Missing key 'UrgentHueShift' for group 'PlankDockTheme' in preferences file '/usr/share/themes/io.elementary.stylesheet.bubblegum/plank/dock.theme' - using default value
Jul  8 17:02:45 Rossy gala[98811]: meta_sound_player_play_from_theme: assertion 'META_IS_SOUND_PLAYER (player)' failed
Jul  8 17:02:46 Rossy gsd-media-keys[1676]: Failed to grab accelerator for keybinding settings:magnifier
Jul  8 17:02:46 Rossy gsd-media-keys[1676]: Failed to grab accelerator for keybinding settings:playback-random
Jul  8 17:02:46 Rossy gsd-media-keys[1676]: Failed to grab accelerator for keybinding settings:playback-repeat
Jul  8 17:02:46 Rossy gsd-media-keys[1676]: Failed to grab accelerator for keybinding settings:rfkill
Jul  8 17:02:46 Rossy gsd-media-keys[1676]: Failed to grab accelerator for keybinding settings:hibernate
Jul  8 17:02:46 Rossy gala[98811]: clutter_actor_remove_child: assertion 'CLUTTER_IS_ACTOR (child)' failed
Jul  8 17:02:46 Rossy gala[98811]: invalid (NULL) pointer instance
Jul  8 17:02:46 Rossy gala[98811]: g_signal_connect_data: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed
Jul  8 17:02:46 Rossy gala[98811]: clutter_actor_remove_child: assertion 'CLUTTER_IS_ACTOR (child)' failed
Jul  8 17:02:46 Rossy gala[98811]: invalid (NULL) pointer instance
Jul  8 17:02:46 Rossy gala[98811]: g_signal_connect_data: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed
Jul  8 17:02:46 Rossy gala[98811]: clutter_actor_remove_child: assertion 'CLUTTER_IS_ACTOR (child)' failed
Jul  8 17:02:46 Rossy gala[98811]: invalid (NULL) pointer instance
Jul  8 17:02:46 Rossy gala[98811]: g_signal_connect_data: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed
Jul  8 17:02:46 Rossy gala[98811]: clutter_actor_remove_child: assertion 'CLUTTER_IS_ACTOR (child)' failed
Jul  8 17:02:46 Rossy gala[98811]: invalid (NULL) pointer instance
Jul  8 17:02:46 Rossy gala[98811]: g_signal_connect_data: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed
Jul  8 17:02:46 Rossy gala[98811]: clutter_actor_remove_child: assertion 'CLUTTER_IS_ACTOR (child)' failed
Jul  8 17:02:46 Rossy gala[98811]: invalid (NULL) pointer instance
Jul  8 17:02:46 Rossy gala[98811]: g_signal_connect_data: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed
Jul  8 17:02:46 Rossy gala[98811]: clutter_actor_remove_child: assertion 'CLUTTER_IS_ACTOR (child)' failed
Jul  8 17:02:46 Rossy gala[98811]: invalid (NULL) pointer instance
Jul  8 17:02:46 Rossy gala[98811]: g_signal_connect_data: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed
Jul  8 17:02:46 Rossy gala[98811]: clutter_actor_remove_child: assertion 'CLUTTER_IS_ACTOR (child)' failed
Jul  8 17:02:46 Rossy gala[98811]: invalid (NULL) pointer instance
Jul  8 17:02:46 Rossy gala[98811]: g_signal_connect_data: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed
Jul  8 17:02:46 Rossy gala[98811]: clutter_actor_remove_child: assertion 'CLUTTER_IS_ACTOR (child)' failed
Jul  8 17:02:46 Rossy gala[98811]: invalid (NULL) poiJul  8 17:02:44 Rossy kernel: [73891.396788] gala[33817]: segfault at 21c ip 00007fe91c229a04 sp 00007fff26e39ee8 error 4 in libmutter-6.so.0.0.0[7fe91c1a2000+fe000]
Jul  8 17:02:44 Rossy kernel: [73891.396794] Code: 0f af c0 01 f8 41 89 44 24 0c 48 83 c4 08 4c 89 e2 4c 89 e6 48 89 ef 5d 41 5c e9 97 fd ff ff 0f 1f 80 00 00 00 00 f3 0f 1e fa <f3> 0f 6f 87 1c 02 00 00 0f 11 06 c3 f3 0f 1e fa 41 55 41 54 49 89
Jul  8 17:02:44 Rossy gnome-session[1536]: gnome-session-binary[1536]: WARNING: Application 'gala.desktop' killed by signal 11
Jul  8 17:02:44 Rossy gnome-session-binary[1536]: WARNING: Application 'gala.desktop' killed by signal 11
Jul  8 17:02:45 Rossy touchegg[818]: New client connection request
Jul  8 17:02:45 Rossy touchegg[818]: New client connected
Jul  8 17:02:45 Rossy gala.desktop[98811]: Window manager warning: Trying to re-add keybinding "switch-to-workspace-last".
Jul  8 17:02:45 Rossy gala.desktop[98811]: Window manager warning: Trying to re-add keybinding "move-to-workspace-last".
Jul  8 17:02:45 Rossy gala[98811]: clutter_actor_get_n_children: assertion 'CLUTTER_IS_ACTOR (self)' failed
Jul  8 17:02:45 Rossy gala[98811]: gala_drag_drop_action_get_dragging: assertion 'self != NULL' failed
Jul  8 17:02:45 Rossy gala[98811]: clutter_actor_get_n_children: assertion 'CLUTTER_IS_ACTOR (self)' failed
Jul  8 17:02:45 Rossy gala[98811]: gala_drag_drop_action_get_dragging: assertion 'self != NULL' failed
Jul  8 17:02:45 Rossy gala[98811]: clutter_actor_get_n_children: assertion 'CLUTTER_IS_ACTOR (self)' failed
Jul  8 17:02:45 Rossy gala[98811]: gala_drag_drop_action_get_dragging: assertion 'self != NULL' failed
Jul  8 17:02:45 Rossy gala[98811]: clutter_actor_get_n_children: assertion 'CLUTTER_IS_ACTOR (self)' failed
Jul  8 17:02:45 Rossy gala[98811]: gala_drag_drop_action_get_dragging: assertion 'self != NULL' failed
Jul  8 17:02:45 Rossy gala[98811]: clutter_actor_get_n_children: assertion 'CLUTTER_IS_ACTOR (self)' failed
Jul  8 17:02:45 Rossy gala[98811]: gala_drag_drop_action_get_dragging: assertion 'self != NULL' failed
Jul  8 17:02:45 Rossy gala[98811]: clutter_actor_get_n_children: assertion 'CLUTTER_IS_ACTOR (self)' failed
Jul  8 17:02:45 Rossy gala[98811]: gala_drag_drop_action_get_dragging: assertion 'self != NULL' failed
Jul  8 17:02:45 Rossy gala[98811]: clutter_actor_get_n_children: assertion 'CLUTTER_IS_ACTOR (self)' failed
Jul  8 17:02:45 Rossy gala[98811]: gala_drag_drop_action_get_dragging: assertion 'self != NULL' failed
Jul  8 17:02:45 Rossy gala[98811]: Preferences.vala:192: '/usr/share/themes/io.elementary.stylesheet.bubblegum/plank/dock.theme' is read-only!
Jul  8 17:02:45 Rossy gala[98811]: Preferences.vala:378: Missing key 'UrgentHueShift' for group 'PlankDockTheme' in preferences file '/usr/share/themes/io.elementary.stylesheet.bubblegum/plank/dock.theme' - using default value
Jul  8 17:02:45 Rossy gala[98811]: meta_sound_player_play_from_theme: assertion 'META_IS_SOUND_PLAYER (player)' failed
Jul  8 17:02:46 Rossy gsd-media-keys[1676]: Failed to grab accelerator for keybinding settings:magnifier
Jul  8 17:02:46 Rossy gsd-media-keys[1676]: Failed to grab accelerator for keybinding settings:playback-random
Jul  8 17:02:46 Rossy gsd-media-keys[1676]: Failed to grab accelerator for keybinding settings:playback-repeat
Jul  8 17:02:46 Rossy gsd-media-keys[1676]: Failed to grab accelerator for keybinding settings:rfkill
Jul  8 17:02:46 Rossy gsd-media-keys[1676]: Failed to grab accelerator for keybinding settings:hibernate
Jul  8 17:02:46 Rossy gala[98811]: clutter_actor_remove_child: assertion 'CLUTTER_IS_ACTOR (child)' failed
Jul  8 17:02:46 Rossy gala[98811]: invalid (NULL) pointer instance
Jul  8 17:02:46 Rossy gala[98811]: g_signal_connect_data: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed
Jul  8 17:02:46 Rossy gala[98811]: clutter_actor_remove_child: assertion 'CLUTTER_IS_ACTOR (child)' failed
Jul  8 17:02:46 Rossy gala[98811]: invalid (NULL) pointer instance
Jul  8 17:02:46 Rossy gala[98811]: g_signal_connect_data: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed
Jul  8 17:02:46 Rossy gala[98811]: clutter_actor_remove_child: assertion 'CLUTTER_IS_ACTOR (child)' failed
Jul  8 17:02:46 Rossy gala[98811]: invalid (NULL) pointer instance
Jul  8 17:02:46 Rossy gala[98811]: g_signal_connect_data: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed
Jul  8 17:02:46 Rossy gala[98811]: clutter_actor_remove_child: assertion 'CLUTTER_IS_ACTOR (child)' failed
Jul  8 17:02:46 Rossy gala[98811]: invalid (NULL) pointer instance
Jul  8 17:02:46 Rossy gala[98811]: g_signal_connect_data: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed
Jul  8 17:02:46 Rossy gala[98811]: clutter_actor_remove_child: assertion 'CLUTTER_IS_ACTOR (child)' failed
Jul  8 17:02:46 Rossy gala[98811]: invalid (NULL) pointer instance
Jul  8 17:02:46 Rossy gala[98811]: g_signal_connect_data: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed
Jul  8 17:02:46 Rossy gala[98811]: clutter_actor_remove_child: assertion 'CLUTTER_IS_ACTOR (child)' failed
Jul  8 17:02:46 Rossy gala[98811]: invalid (NULL) pointer instance
Jul  8 17:02:46 Rossy gala[98811]: g_signal_connect_data: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed
Jul  8 17:02:46 Rossy gala[98811]: clutter_actor_remove_child: assertion 'CLUTTER_IS_ACTOR (child)' failed
Jul  8 17:02:46 Rossy gala[98811]: invalid (NULL) pointer instance
Jul  8 17:02:46 Rossy gala[98811]: g_signal_connect_data: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed
Jul  8 17:02:46 Rossy gala[98811]: clutter_actor_remove_child: assertion 'CLUTTER_IS_ACTOR (child)' failed
Jul  8 17:02:46 Rossy gala[98811]: invalid (NULL) pointer instance
Jul  8 17:02:46 Rossy gala[98811]: g_signal_connect_data: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed
Jul  8 17:02:56 Rossy gala[98811]: clutter_actor_remove_child: assertion 'CLUTTER_IS_ACTOR (child)' failed
Jul  8 17:02:56 Rossy gala[98811]: invalid (NULL) pointer instance
Jul  8 17:02:56 Rossy gala[98811]: g_signal_connect_data: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed
nter instance
Jul  8 17:02:46 Rossy gala[98811]: g_signal_connect_data: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed
Jul  8 17:02:56 Rossy gala[98811]: clutter_actor_remove_child: assertion 'CLUTTER_IS_ACTOR (child)' failed
Jul  8 17:02:56 Rossy gala[98811]: invalid (NULL) pointer instance
Jul  8 17:02:56 Rossy gala[98811]: g_signal_connect_data: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed
nter instance
Jul  8 17:02:56 Rossy gala[98811]: g_signal_connect_data: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed

This time while using a full-screen Firefox window.

@wout
Copy link
Sponsor Author

wout commented Jul 12, 2021

Another update. I've been testing various scenarios:

  • all full-screen windows
  • no full-screen windows
  • mixed full-screen not full-screen

It doesn't matter. Crashes happen 3-5 times a day. Mostly if a notification appears after there hasn't been one for a while.

@sekunho
Copy link

sekunho commented Sep 1, 2021

I've experienced this as well although I ran into several problems, and it seems like they can be triggered when a new notification pops up after clicking a previous one. I could consistently reproduce it this way at least. I'll jut merge my findings here if you don't mind.

Scenario is this:

  • Firefox in Workspace A
  • Element (source of notification) in Workspace B

When I'm in Workspace A, a notification pops up, everything is normal. When I click on it, it redirects me to Workspace B, which is also normal. The part where it gets weird is that when I go back to Workspace A, and if a notification from B pops up, things behave strangely.

Steps to Reproduce

  1. Be in workspace A
  2. Notification pops up in A, but app where this came from is in B.
  3. Get a notification, and click on it (not the one in the notification tray from clicking the bell but clicking the popup directly).
  4. Get redirected to B, switch back to A
  5. Get another notification, this is where the bug occurs.

There are two strange behaviors I ran into:

  1. In the video, it forced OBS to pop up even when I didn't do anything. In some cases it forces me to the other workspace.
  2. After I stopped recording, a notification popped up as normal (or it seemed normal), then I repeated the steps above. This caused the session to crash and I was force logged out.
b.mp4

It seems to be fine if I never click on any notification. But I think this part isn't too consistent either. Just seems to be what triggers it in my case. Also it doesn't happen when I turn on do not disturb, as expected.

Platform Information

  • elementaryOS 6 Odin (stable with latest updates applied at the time of writing)
  • Thinkpad T480 (no dGPU)
    • i5-82500U
    • 32GB RAM
    • 512GB 970 Pro

@sarojbelbase
Copy link

happens to my workflow too, I was just blaming my graphics until now lol

@wout
Copy link
Sponsor Author

wout commented Sep 1, 2021

I would like to add that the effect seems to get incrementally worse after it happens one time. Two times already it got so bad that elementary crashed completely, to the point that I needed to log in again and all applications were closed as well (like a fresh login).

@wout
Copy link
Sponsor Author

wout commented Nov 4, 2021

I've been paying attention to the behavior of notifications the past few weeks, and @hsek 's observation is right that the crashes only happen when you're on a different workspace than the app where the notification originates. However, it has nothing to do with clicking on notifications or not. I did a reboot this morning and consciously did not click on notifications when they popped up, but still, I'm getting the crashes.

In October I had two crashes where the whole system went down. One time I even had to do a hard reset because my laptop got stuck on a black screen.

To be clear, I am no longer using the Beta version. At the end of September, I did a clean install with a new SSD. So this is not Beta-related.

image
image

@wout wout changed the title Notifications on full and split-screen workspaces cause crashes on Odin Beta 2 Notifications originating on another workspace cause crashes Nov 4, 2021
@wout
Copy link
Sponsor Author

wout commented Dec 8, 2021

Some more observations:

  • after a crash, the mouse pointer is located at the bottom right corner of the screen
  • crashes also happen if you're in the same workspace as the app where the notification originated, but the app is not in focus

@wout
Copy link
Sponsor Author

wout commented Jan 6, 2022

Just noticed a process called Notifications Demo that's taking up a lot of memory. In fact, more than any other one:

image

I didn't reboot my machine for more than 12 days now, so maybe there's something wrong there. Some kind of memory leak perhaps? I've now terminated the process and I'll have a look at what happens next.

@Schykle
Copy link

Schykle commented Jan 15, 2022

Not sure what the status on this issue is, but I can confirm this is occuring on every single machine I've used elementary OS on. I'll get a notification from Telegram in another workspace, or Discord, or Mail... And my entire screen will go strange for a bit. The notification spawns on the top-left instead of the top-right, and sometimes the session just outright crashes entirely.

My system info is as follows, though this is consistent against multiple machines with varying configs:

System:    Kernel: 5.11.0-46-generic x86_64 bits: 64 compiler: N/A Desktop: Pantheon 
           Distro: elementary OS 6.1 Jólnir 
Machine:   Type: Convertible System: Dell product: Inspiron 7415 2-in-1 v: 1.6.0 serial: <filter> 
           Mobo: Dell model: 0MDMXX v: A01 serial: <filter> UEFI: Dell v: 1.6.0 date: 11/04/2021 
Battery:   ID-1: BAT0 charge: 54.0 Wh condition: 54.0/54.0 Wh (100%) model: BYD DELL WV3K81A status: Full 
           Device-1: hid-0018:04F3:2C66.0004-battery model: 04F31234:00 04F3:2C66 charge: N/A status: N/A 
CPU:       Topology: 8-Core model: AMD Ryzen 7 5700U with Radeon Graphics bits: 64 type: MT MCP arch: Zen 
           rev: 1 L2 cache: 4096 KiB 
           flags: avx avx2 lm nx pae sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3 svm bogomips: 57493 
           Speed: 2951 MHz min/max: 1400/1800 MHz Core speeds (MHz): 1: 1719 2: 3003 3: 2074 4: 1397 
           5: 1397 6: 1397 7: 1397 8: 1397 9: 4051 10: 2293 11: 1513 12: 1597 13: 1893 14: 1724 15: 1397 
           16: 1397 
Graphics:  Device-1: AMD vendor: Dell driver: amdgpu v: kernel bus ID: 03:00.0 
           Display: x11 server: X.Org 1.20.13 driver: amdgpu,ati unloaded: fbdev,modesetting,vesa tty: N/A 
           OpenGL: renderer: AMD RENOIR (DRM 3.40.0 5.11.0-46-generic LLVM 12.0.0) v: 4.6 Mesa 21.0.3 
           direct render: Yes 
Audio:     Device-1: AMD vendor: Dell driver: snd_hda_intel v: kernel bus ID: 03:00.1 
           Device-2: AMD Raven/Raven2/FireFlight/Renoir Audio Processor vendor: Dell 
           driver: snd_rn_pci_acp3x v: kernel bus ID: 03:00.5 
           Device-3: AMD Family 17h HD Audio vendor: Dell driver: snd_hda_intel v: kernel bus ID: 03:00.6 
           Device-4: Logitech JLAB TALK PRO MICROPHONE type: USB driver: snd-usb-audio,uvcvideo 
           bus ID: 1-4.2:6 
           Device-5: C-Media JLAB TALK PRO MICROPHONE type: USB driver: hid-generic,snd-usb-audio,usbhid 
           bus ID: 1-2:2 
           Sound Server: ALSA v: k5.11.0-46-generic 
Network:   Device-1: Intel Wi-Fi 6 AX200 driver: iwlwifi v: kernel bus ID: 02:00.0 
           IF: wlp2s0 state: up mac: <filter> 
           IF-ID-1: tun0 state: unknown speed: 10 Mbps duplex: full mac: N/A 
Drives:    Local Storage: total: 1.38 TiB used: 70.31 GiB (5.0%) 
           ID-1: /dev/nvme0n1 vendor: SK Hynix model: BC711 NVMe 512GB size: 476.94 GiB 
           ID-2: /dev/sda type: USB vendor: Samsung model: Portable SSD T5 size: 931.51 GiB 
Partition: ID-1: / size: 471.91 GiB used: 47.46 GiB (10.1%) fs: btrfs dev: /dev/dm-1 
           ID-2: /boot size: 945.2 MiB used: 238.1 MiB (25.2%) fs: ext4 dev: /dev/nvme0n1p2 
Sensors:   System Temperatures: cpu: 62.4 C mobo: 39.0 C gpu: amdgpu temp: 52 C 
           Fan Speeds (RPM): cpu: 3685 
Info:      Processes: 595 Uptime: 3h 51m Memory: 14.99 GiB used: 6.65 GiB (44.4%) Init: systemd runlevel: 5 
           Compilers: gcc: N/A Shell: fish v: 3.1.0 inxi: 3.0.38 

@wout
Copy link
Sponsor Author

wout commented Jan 16, 2022

@Schykle It's good to hear it's not just me. I was starting to think it had something to do with my laptop, which is getting a bit old.

@wout
Copy link
Sponsor Author

wout commented Feb 16, 2022

Just a moment ago, I had the same crash, while notifications are disabled. For weeks now I have had notifications on silent because the whole situation is unworkable. This is what I could grab from the syslog:

Feb 16 18:47:12 Rossy kernel: [124271.300755] gala[3270]: segfault at 557b0000000b ip 00007fc3507e9178 sp 00007ffd7c2af720 error 4 in libmutter-cogl-6.so.0.0.0[7fc3507b6000+4a000]
Feb 16 18:47:12 Rossy kernel: [124271.300765] Code: 83 ec 08 48 8b 1f 8b 03 85 c0 75 32 8b 0e eb 16 66 90 8b 50 10 03 50 08 39 56 04 73 17 48 89 c3 8b 03 85 c0 75 18 48 8b 43 20 <8b> 50 0c 03 50 04 39 d1 72 de 48 8b 5b 28 8b 03 85 c0 74 e8 83 f8
Feb 16 18:47:12 Rossy gnome-session[3018]: gnome-session-binary[3018]: WARNING: Application 'gala.desktop' killed by signal 11
Feb 16 18:47:12 Rossy gnome-session-binary[3018]: WARNING: Application 'gala.desktop' killed by signal 11
Feb 16 18:47:13 Rossy touchegg[840]: New client connection request
Feb 16 18:47:13 Rossy touchegg[840]: New client connected
Feb 16 18:47:13 Rossy gala.desktop[2147395]: Window manager warning: Trying to re-add keybinding "switch-to-workspace-last".
Feb 16 18:47:13 Rossy gala.desktop[2147395]: Window manager warning: Trying to re-add keybinding "move-to-workspace-last".
Feb 16 18:47:13 Rossy gala[2147395]: meta_sound_player_play_from_theme: assertion 'META_IS_SOUND_PLAYER (player)' failed
Feb 16 18:47:14 Rossy gsd-media-keys[3190]: Failed to grab accelerator for keybinding settings:magnifier
Feb 16 18:47:14 Rossy gsd-media-keys[3190]: Failed to grab accelerator for keybinding settings:rfkill
Feb 16 18:47:14 Rossy gsd-media-keys[3190]: Failed to grab accelerator for keybinding settings:hibernate
Feb 16 18:47:14 Rossy gsd-media-keys[3190]: Failed to grab accelerator for keybinding settings:playback-random
Feb 16 18:47:14 Rossy gsd-media-keys[3190]: Failed to grab accelerator for keybinding settings:playback-repeat
Feb 16 18:47:14 Rossy gala[2147395]: invalid (NULL) pointer instance
Feb 16 18:47:14 Rossy gala[2147395]: g_signal_connect_data: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed
Feb 16 18:47:14 Rossy gala[2147395]: invalid (NULL) pointer instance
Feb 16 18:47:14 Rossy gala[2147395]: g_signal_connect_data: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed
Feb 16 18:47:14 Rossy gala[2147395]: invalid (NULL) pointer instance
Feb 16 18:47:14 Rossy gala[2147395]: g_signal_connect_data: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed
Feb 16 18:47:14 Rossy gala[2147395]: invalid (NULL) pointer instance
Feb 16 18:47:14 Rossy gala[2147395]: g_signal_connect_data: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed
Feb 16 18:47:14 Rossy gala[2147395]: invalid (NULL) pointer instance
Feb 16 18:47:14 Rossy gala[2147395]: g_signal_connect_data: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed
Feb 16 18:47:14 Rossy gala[2147395]: invalid (NULL) pointer instance
Feb 16 18:47:14 Rossy gala[2147395]: g_signal_connect_data: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed
Feb 16 18:47:14 Rossy gala[2147395]: invalid (NULL) pointer instance
Feb 16 18:47:14 Rossy gala[2147395]: g_signal_connect_data: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed
Feb 16 18:47:14 Rossy gala[2147395]: invalid (NULL) pointer instance
Feb 16 18:47:14 Rossy gala[2147395]: g_signal_connect_data: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed
Feb 16 18:47:14 Rossy gala[2147395]: invalid (NULL) pointer instance
Feb 16 18:47:14 Rossy gala[2147395]: g_signal_connect_data: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed
Feb 16 18:47:14 Rossy gala[2147395]: invalid (NULL) pointer instance
Feb 16 18:47:14 Rossy gala[2147395]: g_signal_connect_data: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed
Feb 16 18:47:14 Rossy gala[2147395]: invalid (NULL) pointer instance
Feb 16 18:47:14 Rossy gala[2147395]: g_signal_connect_data: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed
Feb 16 18:47:14 Rossy gala[2147395]: invalid (NULL) pointer instance
Feb 16 18:47:14 Rossy gala[2147395]: g_signal_connect_data: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed
Feb 16 18:47:14 Rossy gala[2147395]: invalid (NULL) pointer instance
Feb 16 18:47:14 Rossy gala[2147395]: g_signal_connect_data: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed
Feb 16 18:47:14 Rossy gala[2147395]: invalid (NULL) pointer instance
Feb 16 18:47:14 Rossy gala[2147395]: g_signal_connect_data: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed
Feb 16 18:47:14 Rossy gala[2147395]: invalid (NULL) pointer instance
Feb 16 18:47:14 Rossy gala[2147395]: g_signal_connect_data: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed
Feb 16 18:47:14 Rossy gala[2147395]: invalid (NULL) pointer instance
Feb 16 18:47:14 Rossy gala[2147395]: g_signal_connect_data: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed

@sekunho
Copy link

sekunho commented Feb 17, 2022

Interesting. I had notifications silenced thinking it was a workaround. But I suppose adjusting the volume does count as a notification too.

Anyway I moved away from elementary to NixOS because workspaces are unworkable. It's unfortunate it has been ignored for this long.

@jeremypw
Copy link
Contributor

I have tried to reproduce this on a fresh install of elementary 6.1 using artificial notifications from a terminal in one workspace and the Gnome Browser in another but so far no problems. On my previous install I was getting occasional complete freezes These seemed random but maybe associated with Chromium 🤷 My guess is that there is an obscure bug in Gala/Mutter triggered by certain software/operations - there are some outstanding reports in the Gala repo. See for example elementary/gala#419 for code that (at the time) was said to reliable crash the window manager.

This bug contains some info about a similar issue linked to notifications: elementary/gala#1229

@wout
Copy link
Sponsor Author

wout commented Feb 19, 2022

Anyway I moved away from elementary to NixOS because workspaces are unworkable. It's unfortunate it has been ignored for this long.

I'm seriously considering moving away too. I love elementary OS and I've been using it for four years now, but this issue is becoming a massive dealbreaker. It didn't go away with a fresh install, which I hoped it would. I miss the notifications, but if I turn them on, I have to reboot a few times a week because my computer eventually crashes to the point that it's no longer waking up from a black screen.

@jeremypw
Copy link
Contributor

Still unable to reproduce by sending 1000 notifications from a terminal loop in another workspace while working in another workspace. Maybe you could try turning off just the sounds or just the bubbles instead of the whole notification and see whether you still get crashes - that could narrow down the cause.

@wout
Copy link
Sponsor Author

wout commented Feb 20, 2022

I'm going to try no sound today and no bubbles in a few days, and report back.

@wout
Copy link
Sponsor Author

wout commented Feb 21, 2022

@jeremypw Checked with sounds disabled, bubbles disabled, both... no change. The crashes keep coming and the bubbles, in that case, are always on the left side. Also, disabling notification bubbles doesn't work. They pop up regardless of the toggle state.

@kgenkov
Copy link

kgenkov commented Feb 21, 2022

@wout Are the bubbles Chrome's or elementary's? There is a flag for chrome to use native notifications in Linux. Using that flag and I can confirm it was crashing for me too when chat notifications popped out while having multiple workspaces. I have to test Chrome's own notifications for longer time to see if it still crashes

@wout
Copy link
Sponsor Author

wout commented Feb 21, 2022

@kgenkov For me, it crashes on elementary's native bubbles too. Changing the sound volume, for example, has caused multiple crashes in the past few months.

@jeremypw
Copy link
Contributor

@wout Thanks for the update. It is strange you still get Elementary bubbles when they are disabled - which app are they coming from? I assume you disabled the bubbles and sounds in System Settings for "Other" apps?

@wout
Copy link
Sponsor Author

wout commented Feb 21, 2022

I believe it was Mailspring showing the bubble to show with the bubbles disabled. These were the settings:

image

@jeremypw
Copy link
Contributor

I can only see AppCenter notifications disabled in your screenshot. The "Other" option is at the end of the list in the sidebar. This should disable notifications from unlisted apps. Try disabling notifications from third party apps for a start. You can then reintroduce them one app at a time.

@jeremypw
Copy link
Contributor

I see that MailSpring is uses the Electron framework and there is this issue Foundry376/Mailspring#2366 about it crashing display managers. Did you install as Flatpak or Snap? If you can find an equivalent mail program written for Gnome/Gtk it might work better on Elementary. I know the elementary Mail program is still under development.

@wout
Copy link
Sponsor Author

wout commented Feb 22, 2022

It's not just Mailspring, it's also Telegram, Slack, Discord, and elementary-native notifications. I've even tried not opening an electron-based app for a whole day, crashes still happen.

Quite frankly, there's not a single Gnome/Gtk email app that's acceptable for my use. But that's another topic.

@jeremypw
Copy link
Contributor

jeremypw commented Feb 22, 2022

OK, well I guess we are back to some specific interaction of Gala, notifications and maybe your hardware then. I have not seen this type of crash on my setup (mainly Slack and native notifications). Sorry I could not help more.

@wout
Copy link
Sponsor Author

wout commented Feb 23, 2022

I've now disabled all non-elementary notifications. Let's see if that helps. Also, in May, I'll have a brand new laptop, a maxed-out Dell XPS 13 with ubuntu preinstalled. Perhaps that helps. The graphics on my current machine (Dell XPS 13 with Intel UHD 620) were always subpar, so you may be right.

@wout
Copy link
Sponsor Author

wout commented Feb 23, 2022

Just had another crash from a Telegram notification, but those are disabled:

image

In telegram itself, native notifications are enabled:

image

I've now disabled notifications from within the app.

@wout
Copy link
Sponsor Author

wout commented Feb 23, 2022

Same for Mailspring. Other applications are disabled, but still, they're coming through. So I've disabled them from within the app.

@jeremypw
Copy link
Contributor

There are currently some new visual glitches in OS7 but they will no doubt be fixed before release.

@wout
Copy link
Sponsor Author

wout commented Jun 4, 2022

Just noticed this "Notifications Demo" task is running again after quite 12 days of uptime, and it's getting bigger and bigger:

image

It's not something I opened on purpose.

@jeremypw
Copy link
Contributor

jeremypw commented Jun 5, 2022

On OS7, I could only get the elementary notifications demo to run by deliberately typing io.elementary.notifications.demo into a terminal (it does not appear in the applications menu). Notifications sent by this app (in response to user action) are clearly labelled in the wingpanel drop-down. The process stops when the demo window closed. I could not find any other core elementary code that launches this app. Is it in the "Startup" list (System Settings/Applications/Startup)?

Can you confirm the executable name of the demo process on you machine? Does it have a corresponding dock entry or window?

@wout
Copy link
Sponsor Author

wout commented Jun 5, 2022

It's not in the startup applications:

image

Here's some more info:

image

It's the process with id 2567:

image

@jeremypw
Copy link
Contributor

jeremypw commented Jun 5, 2022

Process 2567 is the notifications server (which is normally running) not the demo. You could try running io.elementary.notifications.demo in a terminal to see it create a different process. Maybe a bug in the System Monitor app you are using?

@wout
Copy link
Sponsor Author

wout commented Jun 6, 2022

You're right, a new process starts when I open the demo app. Probably a bug in Monitor.

But still, isn't memory consumption excessive? It keeps on growing, which points to a memory leak I think. Or am I wrong?

image

@jeremypw
Copy link
Contributor

jeremypw commented Jun 6, 2022

It does seem excessive. It starts of using 5.5Mb on my machine. But after sending 2000 test notifications is was still only 65Mb. You can try clearing the notifications but that will not necessarily reduce the memory usage immediately but might stop increasing further.

@wout
Copy link
Sponsor Author

wout commented Jun 6, 2022

Just done that, it's now at 382.5 Mb. I'll keep an eye on it.

@jeremypw
Copy link
Contributor

jeremypw commented Jun 6, 2022

Noticed that after sending the 2000 notifications the wingpanel was using 265Mb. I just tried clearing the 2000 notifications, which did not decrease memory use. I then sent some more - there was virtually no increase in memory so it looks like the memory is not being reclaimed when notifications are dismissed but it is being reused for more notifications. Anyway, this is off topic for this issue; should really open another.

@wout
Copy link
Sponsor Author

wout commented Jun 6, 2022

Yeah, sorry about that. I thought it may have been related.

@GranPC
Copy link

GranPC commented Nov 23, 2022

Can reproduce on daily builds. watch -n0.5 notify-send hello causes the crash rather quickly.

What's most irritating (and trust me, there are a lot of irritating things about this) is that if it happens in quick succession (to be exact, twice in a minute), gnome-session then gives up on restarting gala, throws up the fail whale screen, and even if you restart gala, the fail whale still covers everything. If you kill the process, gnome-session terminates itself. Everything I just described is hardcoded, so there's no way to turn off this behavior, which makes debugging this whole thing about as exciting as a visit to the dentist. I'm not sure who thought that porting the BSoD to Linux was a good idea, and I am going to do my best to not find out.

Anyway, in case anyone wants to try and debug this too, my workaround for now has been to use xdotool to hide the fail whale and then restart gala. I'm going to try and figure out what's going on here ASAP; if anyone who has worked on Gala has any pointers re: where to start looking (beyond getting a full backtrace) please let me know.

@wout
Copy link
Sponsor Author

wout commented Nov 23, 2022

Great to see movement on this issue. I've resorted to turning off notifications altogether. In the meantime, I bought a new computer, did a fresh installation, and it had this issue from day one.

@janxkoci
Copy link

janxkoci commented Nov 23, 2022

@GranPC Sorry to hear that, but elementary OS does not use gnome-session - are you using gala on some other OS?

Since I'm here, you reminded me I wanted to post an update.

I've managed to find a native app that caused me a lot of crashes - Fondo (no account needed 🥳 ).

The app lets you select a wallpaper from Unsplash.com and set it as your background, sending a notification after every success. It's natural to try a bunch of wallpapers and switch to empty desktop to check them out. With the incoming notifications and frequent workspace switching, the crash is just behind the corner, trust me.

I hope this can help with reproducing the issue and debugging.

@GranPC
Copy link

GranPC commented Nov 23, 2022

Are you sure? I just installed a fresh VM with 6.0 and...

root@StandardPCQ35ICH920098b39e57a:/home/jesus# ps aux | grep session
root         841  0.0  0.2 160328  8168 ?        Sl   18:10   0:00 lightdm --session-child 12 21
jesus        864  0.0  0.3 596044 15608 ?        Ssl  18:11   0:00 /usr/libexec/gnome-session-binary --systemd --builtin --session=pantheon
root@StandardPCQ35ICH920098b39e57a:/home/jesus# strings /usr/libexec/gnome-session-binary | grep whale
We failed, but the fail whale is dead. Sorry....
whale
Show the fail whale dialog for testing

But, to answer your question... I actually installed Ubuntu 22.10, stripped a bunch of the stuff it came with, and installed the elementary OS session. Which actually depends on Ubuntu 22.04, so getting the dependencies right was... not fun. I assumed that's why it was crashing, but I decided to check the issue tracker and... well, here we are.

@janxkoci
Copy link

Okay, that can be the same issue or not, hard to say with that many mods 😅

Can you try to reproduce with the Fondo app, as I described?

@GranPC
Copy link

GranPC commented Nov 23, 2022

It's definitely the same issue: I also noticed it was related to workspaces, the symptoms are identical, the logs look the same, and the watch method reproduces it on my clean elementary OS 6 VM. Just grabbing debug symbols now and rebuilding Gala to debug it.

@GranPC
Copy link

GranPC commented Nov 23, 2022

It seems like the issue is that, if a notification gets closed while you are in the process of switching workspaces, WindowManager.destroy is not called, so the notification stack never knows the window got destroyed, and tries to continue to do stuff with it next time a notification is received, leading to the crash. Once I figure out why WindowManager.destroy is not being called (shouldn't be much longer) I will publish a patch.

@GranPC
Copy link

GranPC commented Nov 23, 2022

Ha, found the root cause: https://github.com/GNOME/mutter/blob/3.36.9/src/compositor/meta-window-actor.c#L882

I'm not sure how to fix this "properly" and I'm not keen on forking Mutter too. We might be doing something wrong, but I'm just going to make the notification stack drop windows that are no more. This will fix the crash.

You may still see notifications stuck on the top left. I believe this is what happens when a notification is received while you are switching workspaces; Mutter does not notify us of this, either, so we can't apply our cool positioning logic. You could feasibly fix this by iterating through all the windows instead of maintaining a local list, but I'm running this on a laptop and I want power efficiency.

https://github.com/GranPC/gala/tree/jesus/notification-crash-hack

There is also a version available for Horus (in case someone's running 7 and also frustrated): https://github.com/GranPC/gala/tree/jesus/notification-crash-hack-horus

Please enjoy. I hope my research will help someone fix this properly.

@GranPC
Copy link

GranPC commented Dec 23, 2022

"Fixed" in elementary/gala#1497 - @lenemter, close?

@lenemter
Copy link
Member

lenemter commented Dec 23, 2022

Fixed in elementary/gala#1497. Thanks @GranPC.

@janxkoci
Copy link

That's great news! Is the fix gonna get into OS 6.1 or only to OS 7?

@janxkoci
Copy link

I just got a crash with an email notification, so I guess the fix did not land in OS 6 yet 😕

@kgenkov
Copy link

kgenkov commented Jan 21, 2023

Didn't have a crash for months and I just had a second crash in 3 days.

@wout
Copy link
Sponsor Author

wout commented Jan 22, 2023

I've had notifications on mute for months now. It's a bit of an inconvenience, but it's better than having my UI crashing a few times a day. I hope we can move to OS 7 soon!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

9 participants