GNOME Bugzilla – Bug 788931
Crashes when setting the label of invalid StLabel objects
Last modified: 2018-03-02 09:48:46 UTC
I dont have much information to go on unfurtunately other than what I find in dmesg: ``` gnome-shell[3187]: segfault at 400000002 ip 00007f0cb7c7fb72 sp 00007fff5b45ae60 error 4 in libgobject-2.0.so.0.5400.1[7f0cb7c49000+52000] ``` The frequency of these makes it hard to pin down what the exact problem is and disabling extensions does not seem to help so I do not think they are the culprit. It mainly seems to occur when openning new windows and switching windows. Happy to get get more information for you guys if I am given pointers how to get them (searching on Google did not help much). Machine: Linux localhost.localdomain 4.13.5-1-default #1 SMP PREEMPT Thu Oct 5 18:28:26 UTC 2017 (3fd9659) x86_64 x86_64 x86_64 GNU/Linux OpenSUSE Tumbleweed
Same here: kernel: gnome-shell[6396]: segfault at 100000016 ip 00007fbbe2f53a0d sp 00007ffcb2ca0280 error 4 in libgobject-2.0.so.0.5400.0[7fbbe2f1b000+54000] Only occurs since upgrade to 3.26. On: Linux somehost.somedomain 4.13.5-1-ARCH #1 SMP PREEMPT Fri Oct 6 09:58:47 CEST 2017 x86_64 GNU/Linux How can I help ? I have this in the log just before the crash: oct. 09 18:17:06 somehost.somedomain org.gnome.Shell.desktop[1010]: Window manager warning: 0x1e00001 (new.html —) appears to be one of the offending windows with a timestamp of 3484336. Working around.. oct. 09 18:17:06 somehost.somedomain org.gnome.Shell.desktop[1010]: Window manager warning: last_user_time (3484488) is greater than comparison timestamp (3484478). This most likely represents a buggy cl oct. 09 18:17:06 somehost.somedomain org.gnome.Shell.desktop[1010]: Window manager warning: 0x1e00001 (new.html —) appears to be one of the offending windows with a timestamp of 3484488. Working around.. oct. 09 18:17:41 somehost.somedomain gsd-color[1200]: failed to set screen _ICC_PROFILE: L’ouverture du fichier « /var/lib/gdm/.local/share/icc/edid-8135d71d28069df4a5c56123aeaee90c.icc » a échoué : Permi oct. 09 18:17:41 somehost.somedomain gsd-color[1200]: failed to set screen _ICC_PROFILE: L’ouverture du fichier « /v And this trace: oct. 15 19:17:06 taran.in.noisy.linuxed.net systemd-coredump[29699]: Process 21057 (gnome-shell) of user 1000 dumped core. Stack trace of thread 21057: #0 0x00007f98f13b69e2 g_type_check_instance_cast (libgobject-2.0.so.0) #1 0x00007f98ef0da960 st_label_set_text (libst-1.0.so) #2 0x00007f98eba461c8 ffi_call_unix64 (libffi.so.6) #3 0x00007f98eba45c2a ffi_call (libffi.so.6) #4 0x00007f98f0060cbb n/a (libgjs.so.0) #5 0x00007f98f0062617 n/a (libgjs.so.0) #6 0x00007f98e971164d n/a (libmozjs-52.so.0) #7 0x00007f98e9704687 n/a (libmozjs-52.so.0) #8 0x00007f98e9710e97 n/a (libmozjs-52.so.0) #9 0x00007f98e971146f n/a (libmozjs-52.so.0) #10 0x00007f98e9711779 n/a (libmozjs-52.so.0) #11 0x00007f98e9501219 n/a (libmozjs-52.so.0) #12 0x00001ec28fea13c6 n/a (n/a) #13 0x00007f98e93ffd3e n/a (libmozjs-52.so.0) #14 0x00007f98e97109e3 n/a (libmozjs-52.so.0) #15 0x00007f98e9710e97 n/a (libmozjs-52.so.0) #16 0x00007f98e971146f n/a (libmozjs-52.so.0) #17 0x00007f98e9711779 n/a (libmozjs-52.so.0) #18 0x00007f98e9501219 n/a (libmozjs-52.so.0) #19 0x00001ec28fea13c6 n/a (n/a) #20 0x00005569f76867b8 n/a (n/a) #21 0x00001ec2900f9bf5 n/a (n/a) #22 0x00007f98e93ffd3e n/a (libmozjs-52.so.0) #23 0x00007f98e97109e3 n/a (libmozjs-52.so.0) #24 0x00007f98e9710e97 n/a (libmozjs-52.so.0) #25 0x00007f98e971146f n/a (libmozjs-52.so.0) #26 0x00007f98e9711779 n/a (libmozjs-52.so.0) #27 0x00007f98e9501219 n/a (libmozjs-52.so.0) #28 0x00001ec28fea13c6 n/a (n/a) Best regards, Edouard
Without debug symbols the backtrace has limited usability. Please see https://wiki.gnome.org/Community/GettingInTouch/Bugzilla/GettingTraces for details about how to install debug symbols. Depending on how brave you are, there is another way to help out, but you need another computer for it, as it'll temporarily freeze your machine: 1. Make sure you have gdb and debug symbols for gnome-shell and mutter installed 2. After having logged in, start a screen/tmux 3. In said screne/tmux, as root, attach gdb to the gnome-shell process (gdb -p <PID>) 4. Wait for the bug to appear; the session should suddenly freeze as gdb stopped gnome-shell when the crash happened 5. From the other computer, SSH into the stuck machine, attach to the screen 6. In the attach screen you should find yourself a gdb prompt. In the gdb prompt type "backtrace full" and attach the output to this bug. 7. Also run "print gjs_dumpstack()". In the journal you should hopefully see a Javascript backtrace. Attach that output to this bug as well.
*** Bug 788737 has been marked as a duplicate of this bug. ***
This looks to be the same of Ubuntu bug https://pad.lv/1714989, stacktrace for that is:
+ Trace 238069
Not very helpful though, without gjs_dumpstack(), but the reporter has been able to get it during a live gdb session, let's see if he can attach the log.
Same here. My GNOME Shell 3.26.1 with Wayland on Archlinux kernel 4.13.6-1 usually crashes at the lock screen after I wake up my computer from black screen. One of the stack trace, without symbols though: Process 9652 (gnome-shell) of user 1000 dumped core. Stack trace of thread 9652: #0 0x00007fd421ef3a0d g_type_check_instance_cast (libgobject-2.0.so.0) #1 0x00007fd41fbd7960 st_label_set_text (libst-1.0.so) #2 0x00007fd421edaaef g_object_setv (libgobject-2.0.so.0) #3 0x00007fd421edacaf g_object_set_property (libgobject-2.0.so.0) #4 0x00007fd420ba55e8 n/a (libgjs.so.0) #5 0x00007fd41a1b5cb7 n/a (libmozjs-52.so.0) #6 0x00007fd41a1cb68b n/a (libmozjs-52.so.0) #7 0x00007fd41a1d846e n/a (libmozjs-52.so.0) #8 0x00007fd41a3e5fc1 n/a (libmozjs-52.so.0) #9 0x0000097edd15cc06 n/a (n/a) #10 0x0000097edd3040b5 n/a (n/a) #11 0x00007fd419eb5d3e n/a (libmozjs-52.so.0) #12 0x00007fd41a1c69e3 n/a (libmozjs-52.so.0) #13 0x00007fd41a1c6e97 n/a (libmozjs-52.so.0) #14 0x00007fd41a1c746f n/a (libmozjs-52.so.0) #15 0x00007fd41a1c7779 n/a (libmozjs-52.so.0) #16 0x00007fd419fb7219 n/a (libmozjs-52.so.0) #17 0x0000097edd1653c6 n/a (n/a) #18 0x000055897fd4da30 n/a (n/a) #19 0x0000097edd3f263f n/a (n/a)
*** Bug 786557 has been marked as a duplicate of this bug. ***
So, as per reports in the Ubuntu bug, this seems to be triggered (mostly, but not only) by the extension dash-to-panel: Oct 17 13:54:52 gollum org.gnome.Shell.desktop[30048]: == Stack trace for context 0x5567bdf59170 == Oct 17 13:54:52 gollum org.gnome.Shell.desktop[30048]: #0 0x5567be390fb0 i /home/juergh/.local/share/gnome-shell/extensions/dash-to-panel@jderose9.github.com/windowPreview.js:506 (0x7f58d905d918 @ 36) Oct 17 13:54:52 gollum org.gnome.Shell.desktop[30048]: #1 0x7fff501a1ef0 I self-hosted:917 (0x7f59284ee4d8 @ 394) Not to loose the records, this refers exactly to this revision of the extension: https://github.com/jderose9/dash-to-panel/blob/v9/windowPreview.js#L506 My guess is that the extension should disconnect from the signal on destroy, so not sure we can do much more than that.
I think we can mark this as not-gnome for now (I've sent a PR to the extension upstream), in case we get some other report related to this crash without this extension, let's repen it.
I do not have Dash to Dock installed (I am running OpenSUSE not Ubuntu) and get this bug very frequently. I had even tried disabling extensions for a while in case one of them was causing the issue and still experienced this issue (as I mentioned in the original report). I think marking this as not-gnome is wrong for this reason.
I'm not using dash to panel extension neither (I'm using Archlinux, not Ubuntu). I'm trying to gdb gnome-shell when it crashs but it's not easy.
On my Archlinux, gnome crashes itself when I have no extension installed. I think this definitely looks like a gnome bug.
If you get this with some frequency, please follow Jonas comment (https://bugzilla.gnome.org/show_bug.cgi?id=788931#c2) on how to get a javascript dump that we can use, because it's quite hard to find the offending code otherwise.
Just a note, the gjs_dumpstack() result will be very likely printed in your journal, so check journalctl.
Alternative to what Jonas said to get a trace (until Bug 789237 is fixed), if you only have a machine around you can instead use this automated method, that won't freeze your session (well just for few moments), just run this from a terminal (in your normal session): sudo gdb -p $(pidof -s gnome-shell) -batch \ -ex "set logging on" -ex continue \ -ex "bt full" -ex "call gjs_dumpstack()" \ -ex quit As said, this will just attach a gdb to your session (causing a quick initial freeze) and the continuing until it crashes. If bad things happen, you'll get a gdb.txt file saved in the directory where you get this script launched, and your journalctl /usr/bin/gnome-shell will include a JS stacktrace (just look for "== Stack trace for context"). Waiting for your traces then ;-). PS: Jonas, what about adding also something like this to be performed automatically from an Alt+F2 command? So it can set at runtime without env variables or anything.
Replace "pidof -s gnome-shell" with "pgrep -U $USER -x gnome-shell" to be sure this won't connect to the gdm instance.
Created attachment 362040 [details] debug info Here is my gdb file which I get it by following your debug advice. I can reproduce the crash by Win+L then try to login again (or wake up from hiberation/suspend). Everytime I do it, gnome shell will crash and laptop will return to the gdm welcome interface. This happens under both xorg and wayland, only difference is when gnome-shell crashes under wayland I can't even relogin again, gdm will restart over and over again until I restart the laptop. Really annoying bug for me, thanks in advance.
Created attachment 362042 [details] New debug with Macro's advice New one with Marco Trevisan (Treviño)'s advice.
gan lu, thanks for this, what's more important here is the output of journalctl /usr/bin/gnome-shell (when it says "== Stack trace for context", I guess you still have there without wating for a new crash)
There are many message, so I included some of them, thanks. 10月 22 10:29:35 archlinux gnome-shell[17533]: invalid unclassed pointer in cast to 'ClutterText' 10月 22 10:29:37 archlinux org.gnome.Shell.desktop[17533]: GEWallpaper extension: image: /home/gl/图片/1326-133_europoort_moezelweg__botlek__europoor 10月 22 10:29:37 archlinux org.gnome.Shell.desktop[17533]: 51.9116N, 4.2066W 10月 22 10:29:37 archlinux org.gnome.Shell.desktop[17533]: next refresh in: 86361 seconds 10月 22 10:29:37 archlinux org.gnome.Shell.desktop[17533]: GEWallpaper extension: next check in 86361 seconds @ local time 2017-10-23 10时28分56秒 10月 22 10:29:37 archlinux org.gnome.Shell.desktop[17533]: GEWallpaper extension: restoring previous state... 10月 22 10:29:37 archlinux org.gnome.Shell.desktop[17533]: GEWallpaper extension: image: /home/gl/图片/1326-133_europoort_moezelweg__botlek__europoor 10月 22 10:29:37 archlinux org.gnome.Shell.desktop[17533]: 51.9116N, 4.2066W 10月 22 10:29:37 archlinux org.gnome.Shell.desktop[17533]: next refresh in: 86360 seconds 10月 22 10:29:37 archlinux org.gnome.Shell.desktop[17533]: GEWallpaper extension: next check in 86360 seconds @ local time 2017-10-23 10时28分56秒 10月 22 10:29:37 archlinux org.gnome.Shell.desktop[17533]: GEWallpaper extension: restoring previous state... 10月 22 10:29:37 archlinux org.gnome.Shell.desktop[17533]: GEWallpaper extension: image: /home/gl/图片/1326-133_europoort_moezelweg__botlek__europoor 10月 22 10:29:37 archlinux org.gnome.Shell.desktop[17533]: 51.9116N, 4.2066W 10月 22 10:29:37 archlinux org.gnome.Shell.desktop[17533]: next refresh in: 86360 seconds 10月 22 10:29:37 archlinux org.gnome.Shell.desktop[17533]: GEWallpaper extension: next check in 86360 seconds @ local time 2017-10-23 10时28分56秒 10月 22 10:29:37 archlinux org.gnome.Shell.desktop[17533]: GEWallpaper extension: restoring previous state... 10月 22 10:29:37 archlinux org.gnome.Shell.desktop[17533]: GEWallpaper extension: image: /home/gl/图片/1326-133_europoort_moezelweg__botlek__europoor 10月 22 10:29:37 archlinux org.gnome.Shell.desktop[17533]: 51.9116N, 4.2066W 10月 22 10:29:37 archlinux org.gnome.Shell.desktop[17533]: next refresh in: 86359 seconds 10月 22 10:29:35 archlinux gnome-shell[17533]: clutter_text_get_editable: assertion 'CLUTTER_IS_TEXT (self)' failed 10月 22 10:29:35 archlinux gnome-shell[17533]: clutter_text_get_text: assertion 'CLUTTER_IS_TEXT (self)' failed 10月 22 10:29:35 archlinux gnome-shell[17533]: clutter_text_set_text: assertion 'CLUTTER_IS_TEXT (self)' failed 10月 22 10:29:36 archlinux gnome-shell[17533]: invalid unclassed pointer in cast to 'ClutterText' 10月 22 10:29:36 archlinux gnome-shell[17533]: clutter_text_get_editable: assertion 'CLUTTER_IS_TEXT (self)' failed 10月 22 10:29:36 archlinux gnome-shell[17533]: clutter_text_get_text: assertion 'CLUTTER_IS_TEXT (self)' failed 10月 22 10:29:36 archlinux gnome-shell[17533]: clutter_text_set_text: assertion 'CLUTTER_IS_TEXT (self)' failed 10月 22 10:29:37 archlinux gnome-shell[17533]: invalid unclassed pointer in cast to 'ClutterText' 10月 22 10:29:37 archlinux gnome-shell[17533]: clutter_text_get_editable: assertion 'CLUTTER_IS_TEXT (self)' failed 10月 22 10:29:37 archlinux gnome-shell[17533]: clutter_text_get_text: assertion 'CLUTTER_IS_TEXT (self)' failed 10月 22 10:29:37 archlinux gnome-shell[17533]: clutter_text_set_text: assertion 'CLUTTER_IS_TEXT (self)' failed 10月 22 10:29:37 archlinux gnome-shell[17533]: invalid unclassed pointer in cast to 'ClutterText' 10月 22 10:29:37 archlinux gnome-shell[17533]: clutter_text_get_editable: assertion 'CLUTTER_IS_TEXT (self)' failed 10月 22 10:29:37 archlinux gnome-shell[17533]: clutter_text_set_text: assertion 'CLUTTER_IS_TEXT (self)' failed
That's not relevant for us, please look for the Stack trace string. You can do it with: journalctl /usr/bin/gnome-shell | grep -A 30 "== Stack trace for context"
Hope these the following will help a little, thanks. [gl@archlinux ~]$ journalctl /usr/bin/gnome-shell | grep -A 30 "== Stack trace for context" 10月 22 17:58:46 archlinux org.gnome.Shell.desktop[2766]: == Stack trace for context 0x5651962a3170 == 10月 22 17:58:46 archlinux org.gnome.Shell.desktop[2766]: #0 0x5651967e85b0 i /home/gl/.local/share/gnome-shell/extensions/GoogleEarthWallpaper@neffo.github.com/extension.js:305 (0x7f3ab1529a28 @ 403) 10月 22 17:58:46 archlinux org.gnome.Shell.desktop[2766]: #1 0x7ffcf96140e0 I resource:///org/gnome/gjs/modules/_legacy.js:82 (0x7f3af00c2c48 @ 71) 10月 22 17:58:46 archlinux org.gnome.Shell.desktop[2766]: #2 0x5651967e8530 i /home/gl/.local/share/gnome-shell/extensions/GoogleEarthWallpaper@neffo.github.com/extension.js:196 (0x7f3ab15296f8 @ 17) 10月 22 17:58:46 archlinux org.gnome.Shell.desktop[2766]: #3 0x7ffcf9614d10 I self-hosted:917 (0x7f3af00ee4d8 @ 394) 10月 22 17:58:55 archlinux gnome-shell[3208]: JS WARNING: [resource:///org/gnome/shell/ui/main.js 315]: reference to undefined property "MetaStage" 10月 22 17:58:55 archlinux gnome-shell[3208]: JS WARNING: [resource:///org/gnome/shell/ui/layout.js 221]: reference to undefined property "MetaWindowGroup" 10月 22 17:58:55 archlinux gnome-shell[3208]: JS WARNING: [resource:///org/gnome/shell/ui/osdMonitorLabeler.js 59]: reference to undefined property "MetaDBusDisplayConfigSkeleton" 10月 22 17:58:56 archlinux org.gnome.Shell.desktop[3208]: current session already has an ibus-daemon. 10月 22 17:58:56 archlinux gnome-shell[3208]: JS WARNING: [resource:///org/gnome/shell/ui/slider.js 38]: reference to undefined property "CallyActor" 10月 22 17:58:57 archlinux gnome-shell[3208]: JS WARNING: [resource:///org/gnome/gjs/modules/tweener/tweener.js 540]: reference to undefined property "isSpecialProperty" 10月 22 17:58:57 archlinux gnome-shell[3208]: No permission to trigger offline updates: Polkit.Error: GDBus.Error:org.freedesktop.PolicyKit1.Error.Failed: Action org.freedesktop.packagekit.trigger-offline-update is not registered 10月 22 17:58:58 archlinux org.gnome.Shell.desktop[3208]: GEWallpaper extension: restoring previous state... 10月 22 17:58:58 archlinux org.gnome.Shell.desktop[3208]: GEWallpaper extension: image: /home/gl/图片/1326-133_europoort_moezelweg__botlek__europoort_rotterdam__government_of_rotterdam__south_holland__the_netherlands__3198.jpg explanation: 133 Europoort, Moezelweg, Botlek, Europoort Rotterdam, Government of Rotterdam, South Holland, The Netherlands, 3198 10月 22 17:58:58 archlinux org.gnome.Shell.desktop[3208]: 51.9116N, 4.2066W 10月 22 17:58:58 archlinux org.gnome.Shell.desktop[3208]: next refresh in: 59405 seconds 10月 22 17:58:58 archlinux org.gnome.Shell.desktop[3208]: GEWallpaper extension: next check in 59405 seconds @ local time 2017-10-23 10时29分03秒 10月 22 17:58:58 archlinux org.gnome.Shell.desktop[3208]: GEWallpaper extension: restoring previous state... 10月 22 17:58:58 archlinux org.gnome.Shell.desktop[3208]: GEWallpaper extension: image: /home/gl/图片/1326-133_europoort_moezelweg__botlek__europoort_rotterdam__government_of_rotterdam__south_holland__the_netherlands__3198.jpg explanation: 133 Europoort, Moezelweg, Botlek, Europoort Rotterdam, Government of Rotterdam, South Holland, The Netherlands, 3198 10月 22 17:58:58 archlinux org.gnome.Shell.desktop[3208]: 51.9116N, 4.2066W 10月 22 17:58:58 archlinux org.gnome.Shell.desktop[3208]: next refresh in: 59405 seconds 10月 22 17:58:58 archlinux org.gnome.Shell.desktop[3208]: GEWallpaper extension: next check in 59405 seconds @ local time 2017-10-23 10时29分03秒 10月 22 17:58:58 archlinux org.gnome.Shell.desktop[3208]: GEWallpaper extension: restoring previous state... 10月 22 17:58:58 archlinux org.gnome.Shell.desktop[3208]: GEWallpaper extension: image: /home/gl/图片/1326-133_europoort_moezelweg__botlek__europoort_rotterdam__government_of_rotterdam__south_holland__the_netherlands__3198.jpg explanation: 133 Europoort, Moezelweg, Botlek, Europoort Rotterdam, Government of Rotterdam, South Holland, The Netherlands, 3198 10月 22 17:58:58 archlinux org.gnome.Shell.desktop[3208]: 51.9116N, 4.2066W 10月 22 17:58:58 archlinux org.gnome.Shell.desktop[3208]: next refresh in: 59405 seconds 10月 22 17:58:58 archlinux org.gnome.Shell.desktop[3208]: GEWallpaper extension: next check in 59405 seconds @ local time 2017-10-23 10时29分03秒 10月 22 17:59:15 archlinux org.gnome.Shell.desktop[3314]: glamor: EGL version 1.4 (DRI2): 10月 22 17:59:16 archlinux gnome-shell[3314]: JS WARNING: [resource:///org/gnome/shell/ui/main.js 315]: reference to undefined property "MetaStage" 10月 22 17:59:16 archlinux gnome-shell[3314]: JS WARNING: [resource:///org/gnome/shell/ui/layout.js 221]: reference to undefined property "MetaWindowGroup" 10月 22 17:59:16 archlinux gnome-shell[3314]: JS WARNING: [resource:///org/gnome/shell/ui/osdMonitorLabeler.js 59]: reference to undefined property "MetaDBusDisplayConfigSkeleton" -- 10月 22 18:07:50 archlinux org.gnome.Shell.desktop[3314]: == Stack trace for context 0x5618ebfd2000 == 10月 22 18:07:50 archlinux org.gnome.Shell.desktop[3314]: #0 0x7ffefcbeb910 b /home/gl/.local/share/gnome-shell/extensions/GoogleEarthWallpaper@neffo.github.com/extension.js:305 (0x7fef2ee29a28 @ 403) 10月 22 18:07:50 archlinux org.gnome.Shell.desktop[3314]: #1 0x7ffefcbeb970 I resource:///org/gnome/gjs/modules/_legacy.js:82 (0x7fef600c2c48 @ 71) 10月 22 18:07:50 archlinux org.gnome.Shell.desktop[3314]: #2 0x7ffefcbeba10 b /home/gl/.local/share/gnome-shell/extensions/GoogleEarthWallpaper@neffo.github.com/extension.js:196 (0x7fef2ee296f8 @ 17) 10月 22 18:07:50 archlinux org.gnome.Shell.desktop[3314]: #3 0x7ffefcbebab0 I self-hosted:917 (0x7fef600ee4d8 @ 394) 10月 22 18:07:57 archlinux org.gnome.Shell.desktop[3314]: (EE) 10月 22 18:07:57 archlinux org.gnome.Shell.desktop[3314]: Fatal server error: 10月 22 18:07:57 archlinux org.gnome.Shell.desktop[3314]: (EE) failed to read Wayland events: Broken pipe 10月 22 18:07:57 archlinux org.gnome.Shell.desktop[3314]: (EE) 10月 22 18:08:07 archlinux org.gnome.Shell.desktop[4046]: glamor: EGL version 1.4 (DRI2): 10月 22 18:08:08 archlinux gnome-shell[4046]: JS WARNING: [resource:///org/gnome/shell/ui/main.js 315]: reference to undefined property "MetaStage" 10月 22 18:08:08 archlinux gnome-shell[4046]: JS WARNING: [resource:///org/gnome/shell/ui/layout.js 221]: reference to undefined property "MetaWindowGroup" 10月 22 18:08:08 archlinux gnome-shell[4046]: JS WARNING: [resource:///org/gnome/shell/ui/osdMonitorLabeler.js 59]: reference to undefined property "MetaDBusDisplayConfigSkeleton" 10月 22 18:08:08 archlinux gnome-shell[4046]: JS WARNING: [resource:///org/gnome/shell/ui/slider.js 38]: reference to undefined property "CallyActor" 10月 22 18:08:09 archlinux gnome-shell[4046]: JS WARNING: [resource:///org/gnome/gjs/modules/tweener/tweener.js 540]: reference to undefined property "isSpecialProperty" 10月 22 18:08:09 archlinux gnome-shell[4046]: No permission to trigger offline updates: Polkit.Error: GDBus.Error:org.freedesktop.PolicyKit1.Error.Failed: Action org.freedesktop.packagekit.trigger-offline-update is not registered 10月 22 18:08:09 archlinux org.gnome.Shell.desktop[4046]: GEWallpaper extension: restoring previous state... 10月 22 18:08:09 archlinux org.gnome.Shell.desktop[4046]: GEWallpaper extension: image: /home/gl/图片/1326-133_europoort_moezelweg__botlek__europoort_rotterdam__government_of_rotterdam__south_holland__the_netherlands__3198.jpg explanation: 133 Europoort, Moezelweg, Botlek, Europoort Rotterdam, Government of Rotterdam, South Holland, The Netherlands, 3198 10月 22 18:08:09 archlinux org.gnome.Shell.desktop[4046]: 51.9116N, 4.2066W 10月 22 18:08:09 archlinux org.gnome.Shell.desktop[4046]: next refresh in: 58854 seconds 10月 22 18:08:09 archlinux org.gnome.Shell.desktop[4046]: GEWallpaper extension: next check in 58854 seconds @ local time 2017-10-23 10时29分03秒 10月 22 18:08:10 archlinux gnome-shell[4046]: Error looking up permission: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name org.freedesktop.impl.portal.PermissionStore was not provided by any .service files 10月 22 18:08:11 archlinux gnome-shell[4046]: GNOME Shell started at Sun Oct 22 2017 18:08:09 GMT+0800 (CST) 10月 22 18:09:38 archlinux gnome-shell[4046]: invalid unclassed pointer in cast to 'ClutterText' 10月 22 18:09:38 archlinux gnome-shell[4046]: clutter_text_get_editable: assertion 'CLUTTER_IS_TEXT (self)' failed 10月 22 18:09:38 archlinux gnome-shell[4046]: clutter_text_get_text: assertion 'CLUTTER_IS_TEXT (self)' failed 10月 22 18:09:38 archlinux gnome-shell[4046]: clutter_text_set_text: assertion 'CLUTTER_IS_TEXT (self)' failed 10月 22 18:09:43 archlinux org.gnome.Shell.desktop[4046]: GEWallpaper extension: restoring previous state... 10月 22 18:09:43 archlinux org.gnome.Shell.desktop[4046]: GEWallpaper extension: image: /home/gl/图片/1326-133_europoort_moezelweg__botlek__europoort_rotterdam__government_of_rotterdam__south_holland__the_netherlands__3198.jpg explanation: 133 Europoort, Moezelweg, Botlek, Europoort Rotterdam, Government of Rotterdam, South Holland, The Netherlands, 3198 10月 22 18:09:43 archlinux org.gnome.Shell.desktop[4046]: 51.9116N, 4.2066W 10月 22 18:09:43 archlinux org.gnome.Shell.desktop[4046]: next refresh in: 58760 seconds -- 10月 22 18:09:56 archlinux org.gnome.Shell.desktop[4046]: == Stack trace for context 0x55fcfa1e4000 == 10月 22 18:09:56 archlinux org.gnome.Shell.desktop[4046]: #0 0x7ffd29790e30 b /home/gl/.local/share/gnome-shell/extensions/GoogleEarthWallpaper@neffo.github.com/extension.js:305 (0x7fa94c129a28 @ 403) 10月 22 18:09:56 archlinux org.gnome.Shell.desktop[4046]: #1 0x7ffd29790e90 I resource:///org/gnome/gjs/modules/_legacy.js:82 (0x7fa96c4c2c48 @ 71) 10月 22 18:09:56 archlinux org.gnome.Shell.desktop[4046]: #2 0x7ffd29790f30 b /home/gl/.local/share/gnome-shell/extensions/GoogleEarthWallpaper@neffo.github.com/extension.js:196 (0x7fa94c1296f8 @ 17) 10月 22 18:09:56 archlinux org.gnome.Shell.desktop[4046]: #3 0x7ffd29790f90 I self-hosted:917 (0x7fa96c4ee4d8 @ 394) 10月 22 18:10:05 archlinux org.gnome.Shell.desktop[4046]: (EE) 10月 22 18:10:05 archlinux org.gnome.Shell.desktop[4046]: Fatal server error: 10月 22 18:10:05 archlinux org.gnome.Shell.desktop[4046]: (EE) failed to read Wayland events: Broken pipe 10月 22 18:10:05 archlinux org.gnome.Shell.desktop[4046]: (EE) 10月 22 18:10:19 archlinux org.gnome.Shell.desktop[4721]: glamor: EGL version 1.4 (DRI2): 10月 22 18:10:20 archlinux gnome-shell[4721]: JS WARNING: [resource:///org/gnome/shell/ui/main.js 315]: reference to undefined property "MetaStage" 10月 22 18:10:20 archlinux gnome-shell[4721]: JS WARNING: [resource:///org/gnome/shell/ui/layout.js 221]: reference to undefined property "MetaWindowGroup" 10月 22 18:10:20 archlinux gnome-shell[4721]: JS WARNING: [resource:///org/gnome/shell/ui/osdMonitorLabeler.js 59]: reference to undefined property "MetaDBusDisplayConfigSkeleton" 10月 22 18:10:20 archlinux gnome-shell[4721]: JS WARNING: [resource:///org/gnome/shell/ui/slider.js 38]: reference to undefined property "CallyActor" 10月 22 18:10:20 archlinux gnome-shell[4721]: JS WARNING: [resource:///org/gnome/gjs/modules/tweener/tweener.js 540]: reference to undefined property "isSpecialProperty" 10月 22 18:10:20 archlinux gnome-shell[4721]: No permission to trigger offline updates: Polkit.Error: GDBus.Error:org.freedesktop.PolicyKit1.Error.Failed: Action org.freedesktop.packagekit.trigger-offline-update is not registered 10月 22 18:10:21 archlinux org.gnome.Shell.desktop[4721]: GEWallpaper extension: restoring previous state... 10月 22 18:10:21 archlinux org.gnome.Shell.desktop[4721]: GEWallpaper extension: image: /home/gl/图片/1326-133_europoort_moezelweg__botlek__europoort_rotterdam__government_of_rotterdam__south_holland__the_netherlands__3198.jpg explanation: 133 Europoort, Moezelweg, Botlek, Europoort Rotterdam, Government of Rotterdam, South Holland, The Netherlands, 3198 10月 22 18:10:21 archlinux org.gnome.Shell.desktop[4721]: 51.9116N, 4.2066W 10月 22 18:10:21 archlinux org.gnome.Shell.desktop[4721]: next refresh in: 58724 seconds 10月 22 18:10:21 archlinux org.gnome.Shell.desktop[4721]: GEWallpaper extension: next check in 58724 seconds @ local time 2017-10-23 10时29分05秒 10月 22 18:10:21 archlinux org.gnome.Shell.desktop[4721]: GEWallpaper extension: restoring previous state... 10月 22 18:10:21 archlinux org.gnome.Shell.desktop[4721]: GEWallpaper extension: image: /home/gl/图片/1326-133_europoort_moezelweg__botlek__europoort_rotterdam__government_of_rotterdam__south_holland__the_netherlands__3198.jpg explanation: 133 Europoort, Moezelweg, Botlek, Europoort Rotterdam, Government of Rotterdam, South Holland, The Netherlands, 3198 10月 22 18:10:21 archlinux org.gnome.Shell.desktop[4721]: 51.9116N, 4.2066W 10月 22 18:10:21 archlinux org.gnome.Shell.desktop[4721]: next refresh in: 58724 seconds 10月 22 18:10:21 archlinux org.gnome.Shell.desktop[4721]: GEWallpaper extension: next check in 58724 seconds @ local time 2017-10-23 10时29分05秒 10月 22 18:10:21 archlinux org.gnome.Shell.desktop[4721]: GEWallpaper extension: restoring previous state... 10月 22 18:10:21 archlinux org.gnome.Shell.desktop[4721]: GEWallpaper extension: image: /home/gl/图片/1326-133_europoort_moezelweg__botlek__europoort_rotterdam__government_of_rotterdam__south_holland__the_netherlands__3198.jpg explanation: 133 Europoort, Moezelweg, Botlek, Europoort Rotterdam, Government of Rotterdam, South Holland, The Netherlands, 3198 10月 22 18:10:21 archlinux org.gnome.Shell.desktop[4721]: 51.9116N, 4.2066W 10月 22 18:10:21 archlinux org.gnome.Shell.desktop[4721]: next refresh in: 58724 seconds 10月 22 18:10:21 archlinux org.gnome.Shell.desktop[4721]: GEWallpaper extension: next check in 58724 seconds @ local time 2017-10-23 10时29分05秒 [gl@archlinux ~]$
I dont use the GEWallpaper extension just like I do not use Dash2Dock, so this seems to be a generic issue with javascript gnome extensions
Created attachment 362124 [details] New jounalctl info after I removed GEWallpaper extension I removed GEWallpaper extension, now I still get crashes which however happened less frequently and I can alway relogin again, here is my new jounalctl info, thanks.
Michael, please just do this in your session: https://wiki.gnome.org/Community/GettingInTouch/Bugzilla/GettingTraces/Details#Obtaining_a_stack_and_JS_trace_using_GDB_for_an_already_running_gnome-shell So we can get a JS backtrace from you too. However, gan lu info is indeed pointing only to shell code now. Thanks.
I had to wait to be back at my work laptop to do this sorry for the delay. Thread 1 "gnome-shell" received signal SIGSEGV, Segmentation fault. 0x00007f8ce938bb72 in g_type_check_instance_cast () from /usr/lib64/libgobject-2.0.so.0
+ Trace 238094
I cannot seem to find anything journalctl related to the crash though :/
(In reply to Michael Aquilina from comment #25) > I cannot seem to find anything journalctl related to the crash though :/ Weird... You were getting this with the gdb script above, right? In this case journalctl | grep -A 30 "== Stack trace for context" Should you get something... mhmh.
Thats the exact command I tried at first. When it provided no output I tried to look through the log manually in case the grep was incorrect but there was nothing there too. Do I need to have a specific package installed for this to work?
https://bugzilla.gnome.org/show_bug.cgi?id=789398 might be a similar issue. I'm posting the summary of the trace dump here but a fully attached one is with-in that ticket. Stack trace of thread 1202: #0 0x00007fd1091e89e2 g_type_check_instance_cast (libgobject-2.0.so.0) #1 0x00007fd106f0b960 st_label_set_text (libst-1.0.so) #2 0x00007fd1038781c8 ffi_call_unix64 (libffi.so.6) #3 0x00007fd103877c2a ffi_call (libffi.so.6) #4 0x00007fd107e91cbb n/a (libgjs.so.0) #5 0x00007fd107e93617 n/a (libgjs.so.0) #6 0x00007fd10154264d _ZN2js12CallJSNativeEP9JSContextPFbS1_jPN2JS5ValueEERKNS2_8CallArgsE (libmozjs-52.so.0) #7 0x00007fd101535687 _ZN2js13CallFromStackEP9JSContextRKN2JS8CallArgsE (libmozjs-52.so.0) #8 0x00007fd101541e97 _ZN2js9RunScriptEP9JSContextRNS_8RunStateE (libmozjs-52.so.0) #9 0x00007fd10154246f _ZN2js23InternalCallOrConstructEP9JSContextRKN2JS8CallArgsENS_14MaybeConstructE (libmozjs-52.so.0) #10 0x00007fd101542779 _ZN2js4CallEP9JSContextN2JS6HandleINS2_5ValueEEES5_RKNS_13AnyInvokeArgsENS2_13MutableHandleIS4_EE (libmozjs-52.so.0) #11 0x00007fd101332219 _ZN2js3jit14InvokeFunctionEP9JSContextN2JS6HandleIP8JSObjectEEbjPNS3_5ValueENS3_13MutableHandleIS8_EE (libmozjs-52.so.0) #12 0x00000ce08d92f3c6 n/a (n/a) #13 0x00007fd101230d3e EnterIon (libmozjs-52.so.0) #14 0x00007fd1015419e3 Interpret (libmozjs-52.so.0) #15 0x00007fd101541e97 _ZN2js9RunScriptEP9JSContextRNS_8RunStateE (libmozjs-52.so.0) #16 0x00007fd10154246f _ZN2js23InternalCallOrConstructEP9JSContextRKN2JS8CallArgsENS_14MaybeConstructE (libmozjs-52.so.0) #17 0x00007fd101542779 _ZN2js4CallEP9JSContextN2JS6HandleINS2_5ValueEEES5_RKNS_13AnyInvokeArgsENS2_13MutableHandleIS4_EE (libmozjs-52.so.0) #18 0x00007fd101332219 _ZN2js3jit14InvokeFunctionEP9JSContextN2JS6HandleIP8JSObjectEEbjPNS3_5ValueENS3_13MutableHandleIS8_EE (libmozjs-52.so.0) #19 0x00000ce08d92f3c6 n/a (n/a) #20 0x000055ebef8e4620 n/a (n/a) #21 0x00000ce08d9b89d5 n/a (n/a) #22 0x00007fd101230d3e EnterIon (libmozjs-52.so.0) #23 0x00007fd1015419e3 Interpret (libmozjs-52.so.0) #24 0x00007fd101541e97 _ZN2js9RunScriptEP9JSContextRNS_8RunStateE (libmozjs-52.so.0) #25 0x00007fd10154246f _ZN2js23InternalCallOrConstructEP9JSContextRKN2JS8CallArgsENS_14MaybeConstructE (libmozjs-52.so.0) #26 0x00007fd101765006 DoCallFallback (libmozjs-52.so.0) #27 0x00000ce08d926a96 n/a (n/a) #28 0x000055ebe15163a8 n/a (n/a) #29 0x00000ce08d925888 n/a (n/a) #30 0x00007fd10173d923 EnterBaseline (libmozjs-52.so.0) #31 0x00007fd101745f8b _ZN2js3jit19EnterBaselineMethodEP9JSContextRNS_8RunStateE (libmozjs-52.so.0) #32 0x00007fd101541f14 _ZN2js9RunScriptEP9JSContextRNS_8RunStateE (libmozjs-52.so.0) #33 0x00007fd10154246f _ZN2js23InternalCallOrConstructEP9JSContextRKN2JS8CallArgsENS_14MaybeConstructE (libmozjs-52.so.0) #34 0x00007fd101542779 _ZN2js4CallEP9JSContextN2JS6HandleINS2_5ValueEEES5_RKNS_13AnyInvokeArgsENS2_13MutableHandleIS4_EE (libmozjs-52.so.0) #35 0x00007fd1013d5b44 _Z20JS_CallFunctionValueP9JSContextN2JS6HandleIP8JSObjectEENS2_INS1_5ValueEEERKNS1_16HandleValueArrayENS1_13MutableHandleIS6_EE (libmozjs-52.so.0) #36 0x00007fd107e93da3 n/a (libgjs.so.0) #37 0x00007fd103877fbf ffi_closure_unix64_inner (libffi.so.6) #38 0x00007fd103878330 ffi_closure_unix64 (libffi.so.6) #39 0x00007fd108efa274 g_child_watch_dispatch (libglib-2.0.so.0) #40 0x00007fd108efc0be g_main_context_dispatch (libglib-2.0.so.0) #41 0x00007fd108efdf69 g_main_context_iterate.isra.43 (libglib-2.0.so.0) #42 0x00007fd108efef42 g_main_loop_run (libglib-2.0.so.0) #43 0x00007fd1073e8e30 meta_run (libmutter-1.so.0) #44 0x000055ebdee55e8c n/a (gnome-shell) #45 0x00007fd109c1bf6a __libc_start_main (libc.so.6) #46 0x000055ebdee55fba n/a (gnome-shell)
*** Bug 789398 has been marked as a duplicate of this bug. ***
I get an identical JS trace to the one gan lu posted after removing the GEWallpaper extension. For what it's worth my crashes seem to most often be triggered by things surrounding password entry, particularly in GTK apps (eg. entering into the password entry field in a login page in Firefox, or having the window GNOME opens to get password entry for things like unlocking ssh keys pop up). My intuition suggests it might have something to do with the way GNOME handles IME input when switching into a password field, where it seems to disable the IME and switch to a different input source as indicated in the icon that appears in the top panel for selecting your source disappearing if you have 2 sources, or switching to a different one if you have 3+. This auto-switch doesn't seem to happen with Qt password entry fields, and while I can trigger a segfault with the same traces others have posted here by just repeatedly giving focus to and removing focus from a password field in a GTK app, the same doesn't seem to occur with Qt apps.
Yes, that's almost the same I have experieced and feel. I will try to remove ibus and see if anything happens. (In reply to Zach Doherty from comment #30) > I get an identical JS trace to the one gan lu posted after removing the > GEWallpaper extension. For what it's worth my crashes seem to most often be > triggered by things surrounding password entry, particularly in GTK apps > (eg. entering into the password entry field in a login page in Firefox, or > having the window GNOME opens to get password entry for things like > unlocking ssh keys pop up). My intuition suggests it might have something to > do with the way GNOME handles IME input when switching into a password > field, where it seems to disable the IME and switch to a different input > source as indicated in the icon that appears in the top panel for selecting > your source disappearing if you have 2 sources, or switching to a different > one if you have 3+. This auto-switch doesn't seem to happen with Qt password > entry fields, and while I can trigger a segfault with the same traces others > have posted here by just repeatedly giving focus to and removing focus from > a password field in a GTK app, the same doesn't seem to occur with Qt apps.
I have been running Gnome without ibus for almost a day long, there is still appearently sluggish when I try to input in Firefox, but gnome shell never crashes. When I change back to use ibus, gnome shell crashes again whenever I try to input my password in Firefox. Thanks.
I am experiencing a similar crash (Bug 789398 got marked as duplicate) and nevr had ibus installed.
Ralf, if you can provide a js dumpstack, please follow the instructions above Gan lu, yeah the code I was checking indeed refers to that, need to figure out some details yet though.
Created attachment 362439 [details] [review] status/keyboard: Reset menuItems and Label objects on change In the current code it could happen that we've menuItems and indicatorLabels for sources that aren't anymore around, because in case a source is removed we don't cleanup the container object. So it could happen that we try to deference an invalid menuitem or label if a source change happens mentioning a source that has been deleted. This can be triggered quite easily using looking glass too, just add a source and call this in lg: imports.ui.main.panel.statusArea["keyboard"]._menuItems Inspect the items, remove one and inspect again... You'll see there are still more items than sources, and inspecting the old one will lead to a crash. Not sure this is related to all the cases though, as we'd need to add more debug infos to see what's the status of these arrays on signals, and why we get this signal pointing to an element that has been removed from the input sources already (in this patch I'm also checking for that, but probably it would be better to make the JS to complain)
I got the same issues since 3.26. Usually after resume gnome-shell crashes immediately whenever I got some apps like Tilix and hexchat open prior to suspend. However I didn’t find anything useful from the journal except for: Okt 27 12:17:48 localhost org.gnome.Shell.desktop[2623]: == Stack trace for context 0x5636af955000 == Okt 27 12:17:48 localhost org.gnome.Shell.desktop[2623]: #0 0x7ffd8e894c40 b resource:///org/gnome/shell/ui/windowManager.js:1591 (0x7fd76a1369a0 @ 313) Okt 27 12:17:48 localhost org.gnome.Shell.desktop[2623]: #1 0x7ffd8e894cb0 I resource:///org/gnome/gjs/modules/_legacy.js:82 (0x7fd76adc2c48 @ 71) Okt 27 12:17:48 localhost org.gnome.Shell.desktop[2623]: #2 0x7ffd8e894d40 I self-hosted:917 (0x7fd76adee4d8 @ 394) A lot of Okt 18 21:00:38 localhost gnome-session-binary[13126]: Unrecoverable failure in required component org.gnome.Shell.desktop Okt 18 21:00:38 localhost gnome-session-binary[13126]: WARNING: Application 'org.gnome.Shell.desktop' killed by signal 11 And one of those Okt 18 21:00:40 localhost systemd-coredump[20966]: Process 13156 (gnome-shell) of user 1000 dumped core. Stack trace of thread 13156: #0 0x00007f15da1469e2 g_type_check_instance_cast (libgobject-2.0.so.0) #1 0x00007f15d7e2a960 st_label_set_text (libst-1.0.so) #2 0x00007f15d475e1c8 ffi_call_unix64 (libffi.so.6) #3 0x00007f15d475dc2a ffi_call (libffi.so.6) #4 0x00007f15d8defcbb n/a (libgjs.so.0) #5 0x00007f15d8df1617 n/a (libgjs.so.0) #6 0x00003a5618251810 n/a (n/a) #7 0x000055ae08e97af8 n/a (n/a) #8 0x00003a5618907075 n/a (n/a) #9 0x00007f15d2117d3e n/a (/usr/lib/libmozjs-52.so (deleted)) #10 0x00007f15d24289e3 n/a (/usr/lib/libmozjs-52.so (deleted)) #11 0x00007f15d2428e97 n/a (/usr/lib/libmozjs-52.so (deleted)) #12 0x00007f15d242946f n/a (/usr/lib/libmozjs-52.so (deleted)) #13 0x00007f15d2429779 n/a (/usr/lib/libmozjs-52.so (deleted)) #14 0x00007f15d2219219 n/a (/usr/lib/libmozjs-52.so (deleted)) #15 0x00003a561824d3c6 n/a (n/a) #16 0x00007f15d2117d3e n/a (/usr/lib/libmozjs-52.so (deleted)) #17 0x00007f15d24289e3 n/a (/usr/lib/libmozjs-52.so (deleted)) #18 0x00007f15d2428e97 n/a (/usr/lib/libmozjs-52.so (deleted)) #19 0x00007f15d242946f n/a (/usr/lib/libmozjs-52.so (deleted)) #20 0x00007f15d2429779 n/a (/usr/lib/libmozjs-52.so (deleted)) #21 0x00007f15d22bcb44 n/a (/usr/lib/libmozjs-52.so (deleted)) #22 0x00007f15d8df1da3 n/a (libgjs.so.0) #23 0x00007f15d475dfbf ffi_closure_unix64_inner (libffi.so.6) #24 0x00007f15d475e330 ffi_closure_unix64 (libffi.so.6) #25 0x00007f15d9e58cb3 n/a (libglib-2.0.so.0) #26 0x00007f15d9e5a0be g_main_context_dispatch (libglib-2.0.so.0) #27 0x00007f15d9e5bf69 n/a (libglib-2.0.so.0) #28 0x00007f15d9e5cf42 g_main_loop_run (libglib-2.0.so.0) #29 0x00007f15d834e8a0 meta_run (libmutter-1.so.0) #30 0x000055adfe5c8e8c n/a (gnome-shell) #31 0x00007f15dab79f6a __libc_start_main (libc.so.6) #32 0x000055adfe5c8fba n/a (gnome-shell) (all other threads were at pthread_cond_wait, __poll or epoll_pwait)
Review of attachment 362439 [details] [review]: thanks for the patch! commit message nit: s/deference/access/. and if this was C it would dereference ::: js/ui/status/keyboard.js @@ +829,3 @@ + this._menuItems = {}; + this._indicatorLabels = {}; this is correct @@ +844,3 @@ + this._menuItems[is.index] = menuItem; + this._indicatorLabels[is.index] = indicatorLabel; this is not needed since i must be exactly the same as is.index here @@ +859,3 @@ let newSource = this._inputSourceManager.currentSource; + if (oldSource && this._menuItems[oldSource.index]) { and this shouldn't be needed since the only reason we have oldSource passed in here is to hide its UI actors but they have been destroyed in _sourcesChanged so what we should do is avoid passing an oldSource to this signal handler. to do that, on _inputSourcesChanged() we should set this._currentSource to null
Could this patch be merged into 3.26.2 release? I just don't know how to compile it, thanks.
(In reply to gan lu from comment #38) > Could this patch be merged into 3.26.2 release? No, "needs-work" means that the patch is not ready to be merged.
I'm out for holidays till 12th, I'll finish it once back.
Thanks a lot. I have compiled it with the patch (Marco's original one) by modifying PKGBUILD of Arch Linux. Have been running for almost a day, it works anyway, I get no crashes, thanks again.
> Ralf, if you can provide a js dumpstack, please follow the instructions above Sorry, the crash hasn't happened in a week, and it seems I also don't have the coredump any more. Given that there is a patch, would a backtrace still be useful (in case the crash happens again)?
Patched my shell with https://bugzilla.gnome.org/attachment.cgi?id=362439&action=diff but the segfault just occured: Stack trace of thread 23560: #0 0x00007efd35f2fa0d g_type_check_instance_cast (libgobject-2.0.so.0) #1 0x00007efd33c4f960 st_label_set_text (libst-1.0.so) #2 0x00007efd35f16aef g_object_setv (libgobject-2.0.so.0) #3 0x00007efd35f16caf g_object_set_property (libgobject-2.0.so.0) #4 0x00007efd34bdf5e8 n/a (libgjs.so.0) #5 0x00007efd2e01dcb7 n/a (libmozjs-52.so.0) #6 0x00007efd2e03368b n/a (libmozjs-52.so.0) #7 0x00007efd2e04046e n/a (libmozjs-52.so.0) #8 0x00007efd2e24dfc1 n/a (libmozjs-52.so.0) Seems to only happend on Wayland...
Got another crash… just while doing nothing, waiting for Chrome to open a website. Nov 09 19:17:31 localhost systemd-coredump[2696]: Process 19559 (gnome-shell) of user 1000 dumped core. Stack trace of thread 19559: #0 0x00007f92713139e2 g_type_check_instance_cast (libgobject-2.0.so.0) #1 0x00007f926f033960 st_label_set_text (libst-1.0.so) #2 0x00007f926b7491c8 ffi_call_unix64 (libffi.so.6) #3 0x00007f926b748c2a ffi_call (libffi.so.6) #4 0x00007f926ffbacbb n/a (libgjs.so.0) #5 0x00007f926ffbc617 n/a (libgjs.so.0) #6 0x00007f926941364d n/a (libmozjs-52.so.0) #7 0x00007f9269406687 n/a (libmozjs-52.so.0) #8 0x00007f9269412e97 n/a (libmozjs-52.so.0) #9 0x00007f926941346f n/a (libmozjs-52.so.0) #10 0x00007f9269413779 n/a (libmozjs-52.so.0) #11 0x00007f9269203219 n/a (libmozjs-52.so.0) #12 0x00001af3f657e3c6 n/a (n/a) #13 0x0000562e23c14168 n/a (n/a) #14 0x00001af3f6811173 n/a (n/a) #15 0x00007f9269101d3e n/a (libmozjs-52.so.0) #16 0x00007f92694129e3 n/a (libmozjs-52.so.0) #17 0x00007f9269412e97 n/a (libmozjs-52.so.0) #18 0x00007f926941346f n/a (libmozjs-52.so.0) #19 0x00007f9269413779 n/a (libmozjs-52.so.0) #20 0x00007f9269203219 n/a (libmozjs-52.so.0) #21 0x00001af3f657e3c6 n/a (n/a)
Updating the summary to be a bit less "random". People are discussing various gnome-shell crashes on IRC these days, and it helps if the bugs have meaningful names.
Created attachment 363351 [details] Crash with debug output Followed https://wiki.gnome.org/Community/GettingInTouch/Bugzilla/GettingTraces/Details#Obtaining_a_stack_and_JS_trace_using_GDB_for_an_already_running_gnome-shell and obtained more details.
Journal information: Nov 10 09:17:53 m-zen org.gnome.Shell.desktop[10672]: == Stack trace for context 0x55647702f170 == Nov 10 09:17:53 m-zen org.gnome.Shell.desktop[10672]: #0 0x5564777042c8 i /home/user/.local/share/gnome-shell/extensions/arch-update@RaphaelRochet/extension.js:302 (0x7fc984675230 @ 556) Nov 10 09:17:53 m-zen org.gnome.Shell.desktop[10672]: #1 0x7fffddf670b0 I resource:///org/gnome/gjs/modules/_legacy.js:82 (0x7fc9f83c2c48 @ 71) Nov 10 09:17:53 m-zen org.gnome.Shell.desktop[10672]: #2 0x556477704240 i /home/user/.local/share/gnome-shell/extensions/arch-update@RaphaelRochet/extension.js:402 (0x7fc984675670 @ 126) Nov 10 09:17:53 m-zen org.gnome.Shell.desktop[10672]: #3 0x7fffddf67cb0 I resource:///org/gnome/gjs/modules/_legacy.js:82 (0x7fc9f83c2c48 @ 71) Nov 10 09:17:53 m-zen org.gnome.Shell.desktop[10672]: #4 0x7fffddf67d60 b /home/user/.local/share/gnome-shell/extensions/arch-update@RaphaelRochet/extension.js:390 (0x7fc984675560 @ 285) Nov 10 09:17:53 m-zen org.gnome.Shell.desktop[10672]: #5 0x7fffddf67dc0 I resource:///org/gnome/gjs/modules/_legacy.js:82 (0x7fc9f83c2c48 @ 71) Nov 10 09:17:53 m-zen org.gnome.Shell.desktop[10672]: #6 0x5564777041c0 i /home/user/.local/share/gnome-shell/extensions/arch-update@RaphaelRochet/extension.js:357 (0x7fc984675450 @ 17) Nov 10 09:17:53 m-zen org.gnome.Shell.desktop[10672]: #7 0x7fffddf689f0 I self-hosted:917 (0x7fc9f83ee4d8 @ 394) Nov 10 09:17:55 m-zen gnome-shell[9599]: JS WARNING: [resource:///org/gnome/shell/ui/main.js 315]: reference to undefined property "MetaStage" Nov 10 09:17:55 m-zen gnome-shell[9599]: JS WARNING: [resource:///org/gnome/shell/ui/layout.js 221]: reference to undefined property "MetaWindowGroup" Nov 10 09:17:55 m-zen gnome-shell[9599]: JS WARNING: [resource:///org/gnome/shell/ui/osdMonitorLabeler.js 59]: reference to undefined property "MetaDBusDisplayConfigSkeleton" Nov 10 09:17:55 m-zen gnome-shell[9599]: Failed to launch ibus-daemon: Failed to execute child process “ibus-daemon” (No such file or directory) Nov 10 09:17:55 m-zen gnome-shell[9599]: Failed to connect context: Connection refused Nov 10 09:17:55 m-zen gnome-shell[9599]: JS WARNING: [resource:///org/gnome/shell/ui/slider.js 38]: reference to undefined property "CallyActor" Nov 10 09:17:56 m-zen gnome-shell[9599]: JS WARNING: [resource:///org/gnome/gjs/modules/tweener/tweener.js 540]: reference to undefined property "isSpecialProperty" Nov 10 09:17:56 m-zen gnome-shell[9599]: JS WARNING: [/home/user/.local/share/gnome-shell/extensions/drop-down-terminal@gs-extensions.zzrough.org/extension.js 25]: Requiring GdkX11 but it has 2 versions available; use imports.gi.versions to pick one Nov 10 09:17:56 m-zen gnome-shell[9599]: JS WARNING: [/home/user/.local/share/gnome-shell/extensions/drop-down-terminal@gs-extensions.zzrough.org/extension.js 538]: reference to undefined property "MESSAGE_TRAY" Nov 10 09:17:56 m-zen gnome-shell[9599]: Some code accessed the property 'SignalManager' on the module 'convenience'. That property was defined with 'let' or 'const' inside the module. This was previously supported, but is not correct according to the ES6 standard. Any symbols to be exported from a module must be defined with 'var'. The property access will work as previously for the time being, but please fix your code anyway. Nov 10 09:17:56 m-zen gnome-shell[9599]: Some code accessed the property 'SoundDeviceChooserBase' on the module 'base'. That property was defined with 'let' or 'const' inside the module. This was previously supported, but is not correct according to the ES6 standard. Any symbols to be exported from a module must be defined with 'var'. The property access will work as previously for the time being, but please fix your code anyway. Nov 10 09:17:56 m-zen gnome-shell[9599]: Some code accessed the property 'SETTINGS_SCHEMA' on the module 'prefs'. That property was defined with 'let' or 'const' inside the module. This was previously supported, but is not correct according to the ES6 standard. Any symbols to be exported from a module must be defined with 'var'. The property access will work as previously for the time being, but please fix your code anyway. Nov 10 09:17:56 m-zen gnome-shell[9599]: JS WARNING: [/home/user/.local/share/gnome-shell/extensions/sound-output-device-chooser@kgshank.net/convenience.js 193]: reference to undefined property Symbol.toPrimitive Nov 10 09:17:56 m-zen gnome-shell[9599]: Some code accessed the property 'SHOW_INPUT_SLIDER' on the module 'prefs'. That property was defined with 'let' or 'const' inside the module. This was previously supported, but is not correct according to the ES6 standard. Any symbols to be exported from a module must be defined with 'var'. The property access will work as previously for the time being, but please fix your code anyway. Nov 10 09:17:56 m-zen gnome-shell[9599]: adding icon dir: /home/user/.local/share/gnome-shell/extensions/shellshape@gfxmonk.net/data/icons Nov 10 09:17:56 m-zen org.gnome.Shell.desktop[9599]: INFO : initting schemas Nov 10 09:17:56 m-zen org.gnome.Shell.desktop[9599]: WARN : loading schema from: /home/user/.local/share/gnome-shell/extensions/shellshape@gfxmonk.net/data/glib-2.0/schemas Nov 10 09:17:56 m-zen org.gnome.Shell.desktop[9599]: INFO : translations initted for shellshape Nov 10 09:17:56 m-zen org.gnome.Shell.desktop[9599]: INFO : shellshape initialized! Nov 10 09:17:56 m-zen org.gnome.Shell.desktop[9599]: INFO : shellshape enable() called Nov 10 09:17:56 m-zen org.gnome.Shell.desktop[9599]: INFO : initting schemas Nov 10 09:17:56 m-zen
Once again out of the blue while random browsing a gnome-shell crash happened: Nov 12 17:59:47 localhost systemd-coredump[4503]: Process 2593 (gnome-shell) of user 1000 dumped core. Stack trace of thread 2593: #0 0x00007fbe939bc9e2 g_type_check_instance_cast (libgobject-2.0.so.0) #1 0x00007fbe916dc960 st_label_set_text (libst-1.0.so) #2 0x00007fbe8ddf21c8 ffi_call_unix64 (libffi.so.6) #3 0x00007fbe8ddf1c2a ffi_call (libffi.so.6) #4 0x00007fbe92663cbb n/a (libgjs.so.0) #5 0x00007fbe92665617 n/a (libgjs.so.0) #6 0x00007fbe8babc64d n/a (libmozjs-52.so.0) #7 0x00007fbe8baaf687 n/a (libmozjs-52.so.0) #8 0x00007fbe8babbe97 n/a (libmozjs-52.so.0) #9 0x00007fbe8babc46f n/a (libmozjs-52.so.0) #10 0x00007fbe8babc779 n/a (libmozjs-52.so.0) #11 0x00007fbe8b8ac219 n/a (libmozjs-52.so.0) #12 0x000015368abe73c6 n/a (n/a) #13 0x00007fbe8b7aad3e n/a (libmozjs-52.so.0) #14 0x00007fbe8babb9e3 n/a (libmozjs-52.so.0) #15 0x00007fbe8babbe97 n/a (libmozjs-52.so.0) #16 0x00007fbe8babc46f n/a (libmozjs-52.so.0) #17 0x00007fbe8babc779 n/a (libmozjs-52.so.0) #18 0x00007fbe8b8ac219 n/a (libmozjs-52.so.0) #19 0x000015368abe73c6 n/a (n/a) #20 0x00007fbe8b7aad3e n/a (libmozjs-52.so.0) #21 0x00007fbe8babb9e3 n/a (libmozjs-52.so.0) #22 0x00007fbe8babbe97 n/a (libmozjs-52.so.0) #23 0x00007fbe8babc46f n/a (libmozjs-52.so.0) #24 0x00007fbe8babc779 n/a (libmozjs-52.so.0) #25 0x00007fbe8b8ac219 n/a (libmozjs-52.so.0) #26 0x000015368abe73c6 n/a (n/a) I’ll try to follow the detailed debugging steps now.
I have been running the patched version of gnome-shell for two weeks, haven't got a crash but there are frequently (mouse) freezings for 2-3 seconds every several minutes espcially if I are running Firefox with flash plugin.
See also https://github.com/RaphaelRochet/arch-update/issues/81 for another extension triggering this.
My Wayland session crashes often on Arch Linux when I install some package after unlock my screen. gnome-logs show this info when I reproduce the crash 11:05:04 kernel: traps: gnome-shell[25093] general protection ip:7fb0e9f65a0d sp:7ffc65c902f0 error:0 in libgobject-2.0.so.0.5400.0[7fb0e9f2d000+54000]
Mh this is not saying much... Please follow https://is.gd/wiki_gnome_shell_crash_debug to get proper stacktrace
Created attachment 363866 [details] js stacktrace I can reproduce the crash on two computers running Arch Linux. js stacktrace attached, GDB info below... [Thread 0x7fe8f0a5b700 (LWP 17475) exited] Thread 1 "gnome-shell" received signal SIGSEGV, Segmentation fault. 0x00007fe96c265a0d in g_type_check_instance_cast () from /usr/lib/libgobject-2.0.so.0
+ Trace 238164
Inferior 1 [process 16162] will be detached.
Thanks a lot, the issue isn't related to the shell itself... I've posted a few hints in the offending extension upstream bug: https://github.com/RaphaelRochet/arch-update/issues/81#issuecomment-345083876
So it is not a bug that an extension (written in JavaScript!) can make the shell crash? Do extensions really have "the memory safety of C and the type safety of JavaScript"?
The bug is most likely in the JavaScript engine and also effects other JavaScript applications; such as Pomodoro. Arch Update triggers the crash either during a package install or during updates but is only occurring on two desktops but not on a laptop. Pomodoro is another extension effected by this. Below is the stack trace but it occurred about a hour after locking Gnome. Pomodoro timer was not even active. Stack trace also warns about shell, tweener, drop-down-terminal, and sound-output-device-chooser during recovery ... Stack Trace: ov 16 17:16:43 desktop org.gnome.Shell.desktop[18788]: #0 0x5594d74a6968 i /usr/share/gnome-shell/extensions/pomodoro@arun.codito.in/dialogs.js:140 (0x7f1183e59560 @ 93) Nov 16 17:16:43 desktop org.gnome.Shell.desktop[18788]: #1 0x7fff9d8fe0f0 I resource:///org/gnome/gjs/modules/_legacy.js:82 (0x7f12100c2c48 @ 71) Nov 16 17:16:43 desktop org.gnome.Shell.desktop[18788]: #2 0x5594d74a68c0 i /usr/share/gnome-shell/extensions/pomodoro@arun.codito.in/dialogs.js:121 (0x7f1183e59450 @ 104) Nov 16 17:16:43 desktop org.gnome.Shell.desktop[18788]: #3 0x7fff9d8fed00 I resource:///org/gnome/gjs/modules/_legacy.js:82 (0x7f12100c2c48 @ 71) Nov 16 17:16:43 desktop org.gnome.Shell.desktop[18788]: #4 0x7fff9d8fed60 I self-hosted:917 (0x7f12100ee4d8 @ 394) Nov 16 17:16:43 desktop org.gnome.Shell.desktop[18788]: #5 0x7fff9d8fedf0 I resource:///org/gnome/gjs/modules/signals.js:126 (0x7f12100e2c48 @ 386) Nov 16 17:16:43 desktop org.gnome.Shell.desktop[18788]: #6 0x5594d74a6808 i resource:///org/gnome/shell/ui/messageTray.js:1031 (0x7f11e2d19780 @ 200) Nov 16 17:16:43 desktop org.gnome.Shell.desktop[18788]: #7 0x7fff9d8ffa00 I resource:///org/gnome/gjs/modules/_legacy.js:82 (0x7f12100c2c48 @ 71) Nov 16 17:16:43 desktop org.gnome.Shell.desktop[18788]: #8 0x5594d74a6770 i resource:///org/gnome/shell/ui/messageTray.js:1054 (0x7f11e2d19918 @ 90) Nov 16 17:16:43 desktop org.gnome.Shell.desktop[18788]: #9 0x7fff9d900610 I resource:///org/gnome/gjs/modules/_legacy.js:82 (0x7f12100c2c48 @ 71) Nov 16 17:16:43 desktop org.gnome.Shell.desktop[18788]: #10 0x5594d74a66c0 i resource:///org/gnome/shell/ui/messageTray.js:1016 (0x7f11e2d196f8 @ 208) Nov 16 17:16:43 desktop org.gnome.Shell.desktop[18788]: #11 0x7fff9d901220 I resource:///org/gnome/gjs/modules/_legacy.js:82 (0x7f12100c2c48 @ 71) Nov 16 17:16:43 desktop org.gnome.Shell.desktop[18788]: #12 0x5594d74a6610 i resource:///org/gnome/shell/ui/notificationDaemon.js:199 (0x7f11e2255450 @ 335) Nov 16 17:16:43 desktop org.gnome.Shell.desktop[18788]: #13 0x7fff9d901e40 I resource:///org/gnome/gjs/modules/_legacy.js:82 (0x7f12100c2c48 @ 71) Nov 16 17:16:43 desktop org.gnome.Shell.desktop[18788]: #14 0x5594d74a6560 i resource:///org/gnome/shell/ui/notificationDaemon.js:300 (0x7f11e2255670 @ 207) Nov 16 17:16:43 desktop org.gnome.Shell.desktop[18788]: #15 0x7fff9d902a60 I self-hosted:917 (0x7f12100ee4d8 @ 394) Nov 16 17:16:43 desktop org.gnome.Shell.desktop[18788]: #16 0x7fff9d903220 b resource:///org/gnome/gjs/modules/overrides/Gio.js:90 (0x7f11e2e03670 @ 118) Recovery: Nov 16 17:16:45 desktop gnome-shell[15858]: JS WARNING: [resource:///org/gnome/shell/ui/main.js 315]: reference to undefined property "MetaStage" Nov 16 17:16:45 desktop gnome-shell[15858]: JS WARNING: [resource:///org/gnome/shell/ui/layout.js 221]: reference to undefined property "MetaWindowGroup" Nov 16 17:16:45 desktop gnome-shell[15858]: JS WARNING: [resource:///org/gnome/shell/ui/osdMonitorLabeler.js 59]: reference to undefined property "MetaDBusDisplayConfigSkeleton" Nov 16 17:16:45 desktop gnome-shell[15858]: Failed to launch ibus-daemon: Failed to execute child process “ibus-daemon” (No such file or directory) Nov 16 17:16:45 desktop gnome-shell[15858]: JS WARNING: [resource:///org/gnome/shell/ui/slider.js 38]: reference to undefined property "CallyActor" Nov 16 17:16:45 desktop gnome-shell[15858]: JS WARNING: [resource:///org/gnome/gjs/modules/tweener/tweener.js 540]: reference to undefined property "isSpecialProperty" Nov 16 17:16:46 desktop gnome-shell[15858]: JS WARNING: [/home/user/.local/share/gnome-shell/extensions/drop-down-terminal@gs-extensions.zzrough.org/extension.js 25]: Requiring GdkX11 but it has 2 versions available; use imports.gi.versions to pick one Nov 16 17:16:46 desktop gnome-shell[15858]: JS WARNING: [/home/user/.local/share/gnome-shell/extensions/drop-down-terminal@gs-extensions.zzrough.org/extension.js 538]: reference to undefined property "MESSAGE_TRAY" Nov 16 17:16:46 desktop gnome-shell[15858]: Some code accessed the property 'SignalManager' on the module 'convenience'. That property was defined with 'let' or 'const' inside the module. This was previously supported, but is not correct according to the ES6 standard. Any symbols to be exported from a module must be defined with 'var'. The property access will work as previously for the time being, but please fix your code anyway. Nov 16 17:16:46 desktop gnome-shell[15858]: Some code accessed the property 'SoundDeviceChooserBase' on the module 'base'. That property was defined with 'let' or 'const' inside the module. This was previously supported, but is not correct according to the ES6 standard. Any symbols to be exported from a module must be defined with 'var'. The property access will work as previously for the time being, but please fix your code anyway. Nov 16 17:16:46 desktop gnome-shell[15858]: Some code accessed the property 'SETTINGS_SCHEMA' on the module 'prefs'. That property was defined with 'let' or 'const' inside the module. This was previously supported, but is not correct according to the ES6 standard. Any symbols to be exported from a module must be defined with 'var'. The property access will work as previously for the time being, but please fix your code anyway. Nov 16 17:16:46 desktop gnome-shell[15858]: JS WARNING: [/home/user/.local/share/gnome-shell/extensions/sound-output-device-chooser@kgshank.net/convenience.js 193]: reference to undefined property Symbol.toPrimitive Nov 16 17:16:46 desktop gnome-shell[15858]: Some code accessed the property 'SHOW_INPUT_SLIDER' on the module 'prefs'. That property was defined with 'let' or 'const' inside the module. This was previously supported, but is not correct according to the ES6 standard. Any symbols to be exported from a module must be defined with 'var'. The property access will work as previously for the time being, but please fix your code anyway.
Again, Pomodoro extension was doing things wrongly, assuming it might be never destroyed and reloaded at shell wishes, and thus crashing. I've pointed out what to fix upstream and they did it (check new version for it). So, it's indeed this caused by changes in the JS engines that probably now garbage-collects more than it used to do, but this is not an issue, it's the JS code that should be fixed in order not to access to potentially dead memory areas.
Created attachment 364098 [details] [review] status/keyboard: Reset menuItems and Label objects on change Sorry for the delay, patch updated according to the Rui's review.
> it's the JS code that should be fixed in order not to access to potentially dead memory areas. I don't follow. It should be impossible for JS code to access dead memory areas, just like in the browser. That's the entire point of a safe, garbage-collected language.
Review of attachment 364098 [details] [review]: looks good
(In reply to Ralf from comment #59) > > it's the JS code that should be fixed in order not to access to potentially dead memory areas. > > I don't follow. It should be impossible for JS code to access dead memory > areas, just like in the browser. That's the entire point of a safe, > garbage-collected language. I agree, it should not crash the shell while the engine should complain that that pointer is invalid, and that's probably a more gjs issue, but such extensions are wrong anyway and would fail at JS level in any case. It's even true that we're not in a normal JS environment here, and we've always to think what's below.
(In reply to Ralf from comment #59) > I don't follow. It should be impossible for JS code to access dead memory > areas, just like in the browser. That's the entire point of a safe, > garbage-collected language. We have a mix of JS and native C objects here. The C objects might be explicitly destroyed while JS objects that refer to them are still reachable and thus kept alive. Now, maybe (I haven't checked) it is possible to make gjs aware of this type of GObject (in this case a ClutterActor) and null out all references to the corresponding JS object thus GC it. But even then you'd still have cases like this one except instead of a segfault you'd have a runtime JS TypeError.
(In reply to Rui Matos from comment #62) > Now, maybe (I haven't checked) it is possible to make gjs aware of this type > of GObject (in this case a ClutterActor) and null out all references to the > corresponding JS object thus GC it. I was wondering the same... Not sure it's something wanted or not, performance-wise though.
The following fix has been pushed: commit a46af9e status/keyboard: Reset menuItems and Label objects on change
Created attachment 364127 [details] [review] status/keyboard: Reset menuItems and Label objects on change In the current code it could happen that we've menuItems and indicatorLabels for sources that aren't anymore around, because in case a source is removed we don't cleanup the their container objects. Also, we should nullify InputManager's _currentSource when sources change or it might point to some invalid data again. So it could happen that we try to access an invalid menuitem or label if a source change happens mentioning a source that has been deleted.
I'm not sure I follow this exactly (or what exactly has been RESOLVED FIXED). Am I understanding that GJS is not respecting destroy signals as it should? Ie. every object and every signal handler on it that's destroyed, has to be followed by a manual nullify and disconnect? I'm using code that never previously raised a TypeError, but is reliably crashing Gnome Shell. What exactly must happen to avoid these "extensions are wrong" situations?
(In reply to andrew.g.r.holmes from comment #66) > What exactly must happen to avoid these "extensions > are wrong" situations? In general what should not happen is that all the async operations are stopped when the extension actor is destroyed. Maybe the shell wasn't doing this before, but if it now requires a component to be deleted, you have to make sure that all the code touching it will be stopped at that point.
> In general what should not happen is that all the async operations are stopped when the extension actor is destroyed. You mean GJS should not do this automatically (although it previously did/might have)? > Maybe the shell wasn't doing this before, but if it now requires a component to be deleted, you have to make sure that all the code touching it will be stopped at that point. Here you mean callbacks on "external" objects that aren't destroyed when the callback target is? Such as parent objects or other non-self, non-child objects and Mainloop timeouts, etc? Child objects should still get destroyed with their signal handlers and be okay though, right? Sorry for all the questions, but I have mighty large code-base to go through.
> You mean GJS should not do this automatically (although it previously did/might have)? No, I was not referring to GJS but what you have to ensure in order to fix the issues. > Here you mean callbacks on "external" objects that aren't destroyed > when the callback target is? Such as parent objects or other non-self, > non-child objects and Mainloop timeouts, etc? Exactly. > Child objects should still get destroyed with their signal > handlers and be okay though, right? Yes, in this case there's no need to do anything as when they're destroyed they won't trigger any signal anyway. FYI, examples of fixes for such issues for some extensions are: https://github.com/jderose9/dash-to-panel/pull/263/files https://github.com/codito/gnome-pomodoro/pull/321/files
This PR [1] in gjs attempts to avoid crashes in such cases... For example, for the shell crash I've fixed here, it would have instead just failed with: Nov 27 20:36:26 ubuntu-vmware gnome-shell[14038]: JS ERROR: Error: Object is St.Label.prototype, has been already deallocated - cannot convert to GObject* init/Clutter.Actor.prototype.toString@resource:///org/gnome/shell/ui/environment.js:103:16 objectToString@resource:///org/gnome/shell/ui/lookingGlass.js:262:9 ObjLink<._init@resource:///org/gnome/shell/ui/lookingGlass.js:274:20 wrapper@resource:///org/gnome/gjs/modules/_legacy.js:82:22 _Base.prototype._construct@resource:///org/gnome/gjs/modules/_legacy.js:18:5 Class.prototype._construct/newClass@resource:///org/gnome/gjs/modules/_legacy.js:114:32 Result<._init@resource:///org/gnome/shell/ui/lookingGlass.js:311:23 wrapper@resource:///org/gnome/gjs/modules/_legacy.js:82:22 _Base.prototype._construct@resource:///org/gnome/gjs/modules/_legacy.js:18:5 Class.prototype._construct/newClass@resource:///org/gnome/gjs/modules/_legacy.js:114:32 LookingGlass<._pushResult@resource:///org/gnome/shell/ui/lookingGlass.js:936:22 wrapper@resource:///org/gnome/gjs/modules/_legacy.js:82:22 LookingGlass<._evaluate@resource:///org/gnome/shell/ui/lookingGlass.js:1009:9 wrapper@resource:///org/gnome/gjs/modules/_legacy.js:82:22 LookingGlass<._init/<@resource:///org/gnome/shell/ui/lookingGlass.js:895:13 [1] https://gitlab.gnome.org/GNOME/gjs/merge_requests/22
*** Bug 791056 has been marked as a duplicate of this bug. ***
Would it be possible to get a new release with the commit included? This bug is getting annoying.
*** Bug 791919 has been marked as a duplicate of this bug. ***
I still got crashes when try to open a lock-screen on both wayland and xorg. gnome-shell version is 3.26.2. When will the fixes be merged? What version of gnome can get these fixes?
For information, crashes are due to broken Gnome Shell extensions, in my case "clipboard indicator"
How did you manage to find out which extension was responsible for the crashes? I'm still getting the crashes and want to disable the extension responsible.
(In reply to Paul Wise from comment #76) > How did you manage to find out which extension was responsible for the > crashes? I'm still getting the crashes and want to disable the extension > responsible. Just use `call gjs_dumpstack()` in gdb, follow this to get easier debugging: https://is.gd/wiki_gnome_shell_crash_debug
I have already disabled extensions in gnome-tweaks, but still got the following error when try to re-login after lock screen. systemd-coredump[11878]: Process 7051 (gnome-shell) of user 1000 dumped core. Stack trace of thread 7051: #0 0x00007f6bcb5da5a2 g_type_check_instance_cast (libgobject-2.0.so.0) #1 0x00007f6bc8d0f278 st_label_set_text (libst-1.0.so) #2 0x00007f6bcb5bc21e g_object_setv (libgobject-2.0.so.0) #3 0x00007f6bcb5bd1ae g_object_set_property (libgobject-2.0.so.0) #4 0x00007f6bca2a84b7 n/a (libgjs.so.0) #5 0x00007f6bc1b9dd92 _ZL29NativeSetExistingDataPropertyP9JSContextN2JS6HandleIPN2js12NativeObjectEEENS2_IPNS3_5ShapeEEENS2_INS1_5ValueEEESB_R #6 0x00007f6bc1bb4352 _ZN2js17NativeSetPropertyEP9JSContextN2JS6HandleIPNS_12NativeObjectEEENS3_I4jsidEENS3_INS2_5ValueEEESA_NS_13QualifiedBoo #7 0x00007f6bc1bc14ae _ZN2js11SetPropertyEP9JSContextN2JS6HandleIP8JSObjectEENS3_I4jsidEENS3_INS2_5ValueEEESA_RNS2_14ObjectOpResultE (libmozjs #8 0x00007f6bc1dd24a2 _ZN2js3jitL17DoSetPropFallbackEP9JSContextPNS0_13BaselineFrameEPNS0_18ICSetProp_FallbackEN2JS6HandleINS7_5ValueEEESA_NS7 #9 0x00000d66d19cec06 n/a (n/a) #10 0x00000d66d1babc05 n/a (n/a) #11 0x000055c8ee5e6760 n/a (n/a) #12 0x00000d66d1babc05 n/a (n/a) Is the issue above not like this bug?
@Developers: Can we please have a bugfix release of gnome-shell? (In reply to Pengyu Ma from comment #74) > I still got crashes when try to open a lock-screen on both wayland and xorg. > gnome-shell version is 3.26.2. > > When will the fixes be merged? > What version of gnome can get these fixes? The fixes have been merged to gnome-shell 3.26 git branch and will land in the next release, 3.26.3.