elvetemedve / gnome-shell-extension-system-monitor

Gnome Shell extension for displaying resource usage
GNU General Public License v3.0
87 stars 15 forks source link

Javascript stack trace with latest gjs in view.js:162 #45

Closed genodeftest closed 5 years ago

genodeftest commented 6 years ago

Steps to reproduce: unclear.

What happens: When running gnome-shell, the org.gnome.Shell.desktop ID logs these stack traces to syslog quite often:

== Stack trace for context 0x55d4af8c2000 ==
#0 0x7ffc203bf720 b   resource:///org/gnome/gjs/modules/_legacy.js:83 (0x7f5ab80c2bc0 @ 87)
#1 0x55d4afb3f320 i   /home/username/.local/share/gnome-shell/extensions/System_Monitor@bghome.gmail.com/view.js:162 (0x7f5a85d21230 @ 127)
#2 0x7ffc203c0aa0 b   resource:///org/gnome/gjs/modules/_legacy.js:82 (0x7f5ab80c2bc0 @ 71)
#3 0x55d4afb3f278 i   /home/username/.local/share/gnome-shell/extensions/System_Monitor@bghome.gmail.com/view.js:169 (0x7f5a85d212b8 @ 109)
#4 0x55d4afb3f1d0 i   resource:///org/gnome/gjs/modules/_legacy.js:82 (0x7f5ab80c2bc0 @ 71)
#5 0x55d4afb3f150 i   /home/username/.local/share/gnome-shell/extensions/System_Monitor@bghome.gmail.com/extension.js:40 (0x7f5a85d1ad58 @ 22)
#6 0x55d4afb3f0a8 i   resource:///org/gnome/gjs/modules/_legacy.js:82 (0x7f5ab80c2bc0 @ 71)
#7 0x55d4afb3f030 i   /home/username/.local/share/gnome-shell/extensions/System_Monitor@bghome.gmail.com/extension.js:60 (0x7f5a85d1aef0 @ 28)
#8 0x55d4afb3ef70 i   resource:///org/gnome/shell/ui/extensionSystem.js:70 (0x7f5aa4db4230 @ 229)
#9 0x55d4afb3eee8 i   resource:///org/gnome/shell/ui/extensionSystem.js:184 (0x7f5aa4db4450 @ 18)
#10 0x55d4afb3ee30 i   resource:///org/gnome/shell/ui/extensionSystem.js:199 (0x7f5aa4db44d8 @ 81)
#11 0x55d4afb3ed90 i   resource:///org/gnome/shell/ui/extensionSystem.js:299 (0x7f5aa4db4918 @ 76)

and there is also a longer version. These stack traces come in bursts, usually of 5 or 10 at once (same second according to syslog).

What should happen: No stacktrace.

Additional info: Printing these stacktraces is a feature introduced in or after 3.26.0 release, afaik. See also: sustmi/gnome-shell-extension-windowoverlay-icons#4 and https://gitlab.gnome.org/GNOME/gnome-shell/issues/11.

It is unclear to me why those stacktraces are thrown. They might be indicating that the object has already been destroyed somewhere else or that it cannot be destroyed because it is still being referenced by from somewhere else.

Please note that I did not disable this extension at all and I don't know why this function gets called. I guess that it is being called on screen lock or suspend.

Installed software versions: gnome-shell-3.26.2-4.fc27.x86_64 gjs-1.50.4-1.fc27.x86_64 mutter-3.26.2-2.fc27.x86_64

genodeftest commented 6 years ago

It seems like these lines from syslog belong to the stacktraces above:

Object .Gjs_ProcessItemsContainer (0x55c14b605390), has been already finalized. Impossible to set any property to it.
Object .Gjs_DirectoriesContainer (0x55c14d0e8560), has been already finalized. Impossible to set any property to it.
Object .Gjs_NetworkInterfaceItemsContainer (0x55c14e3cef00), has been already finalized. Impossible to set any property to it.
Object .Gjs_SystemLoadItemsContainer (0x55c14c3ee4e0), has been already finalized. Impossible to set any property to it.
elvetemedve commented 6 years ago

This is basically the same as issue https://github.com/elvetemedve/gnome-shell-extension-system-monitor/issues/46.

elvetemedve commented 5 years ago

Some of these has been fixed in version 14, so I'm closing this and keep the other related issue open.