Describe the bug
So I recently upgraded gnome-shell to a version that should include the fix for #950. At the same time, I upgraded from Dash to Panel v35 to v37. I'm not sure if that's fixed, but there's a larger problem now:
Gnome crashes. I saw this in the logs:
gnome-shell[3160]: ../mutter/clutter/clutter/clutter-actor.c:10546: The clutter_actor_set_allocation() function can only be called from within the implementation of the ClutterActor::allocate() virtual function.
Which may provide a hint.
The issue doesn't seem to occur with Dash to Panel disabled.
_Sigh_
Linux distribution and version
Arch Linux
GNOME Shell version
3.36.1+51+ge57a4e093-1
Dash-to-Panel version
v37
Where was Dash-to-Panel installed from?
extensions.gnome.org
Hello lnicola, I just did the same gnome-shell upgrade on Arch and also have the crash on X11. No need to open a popup menu, it just crashes on lock. That's frustrating. What I don't get is that if you enable dash to panel after gnome-shell has started, then the issue doesn't occur when locking. This was probably introduced by https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1223.
gnome-shell[7800]: segfault at 0 ip 00007f1a336320ca sp 00007fffe00ecc50 error 4 in libst-1.0.so[7f1a3360a000+48000]
Code: 48 83 c3 01 41 39 9f 30 01 00 00 0f 8e 2f 01 00 00 49 8b 87 28 01 00 00 48 8d 35 f2 8c 02 00 48 8b 2c d8 48 8b 45 00 48 8b 00 <4c> 8b 20 4c 89 e7 ff 15 02 3d 04 00 85 c0 74 c6 41 80 7c 24 0a 00
Process 7800 (gnome-shell) of user 1000 dumped core.
Stack trace of thread 7800:
#0 0x00007f1a336320ca _st_theme_node_ensure_background (libst-1.0.so + 0x420ca)
#1 0x00007f1a33633e76 st_theme_node_paint_equal (libst-1.0.so + 0x43e76)
#2 0x00007f1a3362b23b n/a (libst-1.0.so + 0x3b23b)
#3 0x00007f1a3362b5ab st_widget_style_changed (libst-1.0.so + 0x3b5ab)
#4 0x00007f1a3362c54c n/a (libst-1.0.so + 0x3c54c)
#5 0x00007f1a3362b550 st_widget_style_changed (libst-1.0.so + 0x3b550)
#6 0x00007f1a3362c54c n/a (libst-1.0.so + 0x3c54c)
#7 0x00007f1a3362b550 st_widget_style_changed (libst-1.0.so + 0x3b550)
#8 0x00007f1a3362c54c n/a (libst-1.0.so + 0x3c54c)
#9 0x00007f1a3362b550 st_widget_style_changed (libst-1.0.so + 0x3b550)
#10 0x00007f1a3362c54c n/a (libst-1.0.so + 0x3c54c)
#11 0x00007f1a3362b550 st_widget_style_changed (libst-1.0.so + 0x3b550)
#12 0x00007f1a3362c54c n/a (libst-1.0.so + 0x3c54c)
#13 0x00007f1a3362b550 st_widget_style_changed (libst-1.0.so + 0x3b550)
#14 0x00007f1a3362c54c n/a (libst-1.0.so + 0x3c54c)
#15 0x00007f1a3362b550 st_widget_style_changed (libst-1.0.so + 0x3b550)
That's frustrating.
Yesss.
This was probably introduced by https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1223.
Possibly. I wasn't sure if it was the gnome-shell upgrade or if it was related to a Dash to Panel change (like the Tweener stuff).
Can you please file this on the gnome-shell repo? I can't get stack traces, but I'll do it if it's not too much of a hassle.
I've been running dtp v37 for a while now and this crash started happening right after the g-s upgrade this morning, so not the Tweener changes for sure. Also the The clutter_actor_set_allocation() function can only be called from within the implementation of the ClutterActor::allocate() virtual function log is also new since this morning, but it happens (on opening a popup menu) even when dtp isn't enabled. I won't have time to open an issue on the gnome-shell repo before tomorrow, if you have some time before that, please open one. Thanks!
I filed https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/2709 and https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/2710 for the log message.
Thanks Inicola, I narrowed down the issue and the crash happens when restoring the panelbox as the extension gets disabled (on lock screen).
If I remove the addChrome call (Main.layoutManager.addChrome(p.panelBox, { affectsStruts: true, trackFullscreen: true });), it doesn't crash, but there is no top panel on the lock screen and a bunch of errors are generated because the shell tries to access its theme info.
As I said, what I don't get is the fact that it doesn't crash when enabling the extension after gnome-shell has loaded. It only crashes when gnome-shell starts with the extension already enabled.
As I said, what I don't get is the fact that it doesn't crash when enabling the extension after gnome-shell has loaded. It only crashes when gnome-shell starts with the extension already enabled.
For me it also crashed after I enabled the extension through gnome-tweaks (without restarting the shell)
Looks like there's a gnome-shell patch: https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1230
I applied this patch on top of the Arch package version 1:3.36.2-1 and it fixed the crash-on-lock issue for me.
Has the patch already made it to Arch? I've noticed I haven't had a crash in 2 days.
Not yet.
The *-git aur build, after being fixed, started doing the same thing again.
The fix has landed in Arch's repo (gnome-shell 1:3.36.2+7+ge4199c71c-1) and it's back to normal! Hopefully smooth sailing till 3.38. Thanks!
Since the fix is not in the Ubuntu repos yet, there is actually an easier way than adding a "proposed" repo, just downgrade GNOME Shell until a fix comes in:
sudo apt install gnome-shell=3.36.1-5ubuntu1 gnome-shell-common=3.36.1-5ubuntu1 gnome-shell-extension-prefs=3.36.1-5ubuntu1
edit: That's for 20.04. You can get the last version for your OS with apt list -a gnome-shell so on and so forth.
pranav@exam ~ > journalctl -f -o cat /usr/bin/gnome-shell
length values must specify a unit
length values must specify a unit
...
../clutter/clutter/clutter-actor.c:10548: The clutter_actor_set_allocation() function can only be called from within the implementation of the ClutterActor::allocate() virtual function.
../clutter/clutter/clutter-actor.c:10548: The clutter_actor_set_allocation() function can only be called from within the implementation of the ClutterActor::allocate() virtual function.
...
Error in size change accounting.
^Zโ
Distro: Ubuntu 20.04 LTS
GNOME: 3.36.2
Dash-to-Panel: 37
@charlesg99 Are you sure this problem is fixed? I hope this issue is not related to this extension too.
@PranavBhattarai that's https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/2710 and is unrelated to the crash here.
@lnicola Thanks a lot.
Most helpful comment
Looks like there's a gnome-shell patch: https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1230
I applied this patch on top of the Arch package version 1:3.36.2-1 and it fixed the crash-on-lock issue for me.