GNOME Bugzilla – Bug 676759
Occasional deadlock after login freezes gnome shell
Last modified: 2021-07-05 14:31:32 UTC
Created attachment 214879 [details] log of the gdb debug session Just after logging in from lightdm, gnome-shell freezes sometimes (happens in around 5-10% of all logins) and never recovers. The mouse can be moved still, but nothing is clickable. I have this problem on two separate 64bit machines running Ubuntu 12.04 with Gnome Shell 3.4.1. Attached you may find a backtrace, which looks to me like there could be a deadlock, unfortunately w/o symbols.
Install some debugging symbols.
Yes, already figured. I'll post a full bt as soon as it happens again. Do you need any futher inspection apart from bt? It's not like I can provoke it, and I'd like to provide you all the needed information asap.
Jasper, today it happened again, this time I have a backtrace for you with symbols (see attachments). In case I did miss something, I also saved a core dump for later inspection.
Created attachment 215484 [details] log of the gdb debug session WITH symbols
hi, sounds like a bug I've been experiencing in the past few weeks (didn't have it before). gnome shell seems to freeze after login (using gdm3) around 40-50% of the time. I can use the mouse, but I can't click on anything. The network manager shows an icon that is red (looks like it isn't connected to a network or something). I can escape out to a tty shell and restart gdm3, login again, and it works fine after that. Happens on my ASUS U31S (64 bit debian testing, gnome shell 3.4, nVidia Geforce GT520M) and on my ASUS G74SZ (64 bit debian testing, gnome shell 3.4, NVIDIA GeForce GTX 560M using the proprietary graphics driver).
Are you able to use the Nouveau driver instead of the proprietary one, at least just to check whether it works?
(In reply to comment #6) > Are you able to use the Nouveau driver instead of the proprietary one, at least > just to check whether it works? It is most likely not the graphics driver, since I am experiencing it both on a system with nvidia card *and* on another system with Core i5 integrated GPU.
(In reply to comment #6) > Are you able to use the Nouveau driver instead of the proprietary one, at least > just to check whether it works? yeah agreed - it happens on both of my machines, one using the proprietary nvidia driver, and the other using the Nouveau driver.
I'm also experiencing this problem on my two systems (one with the open source radeon driver, one with nouveau driver). Both systems are recent Arch Linux installations. This bug has also been reported in the Arch Linux bug tracker: https://bugs.archlinux.org/task/29653
I have the same problem on two systems: An Ubuntu 12.04 system (32bit) with LightDM and an Arch Linux system (64bit) with GDM. Both have Intel graphics. On the Ubuntu machine, about 50% of logins ended in a deadlock, on the Arch machine, the number is closer to 10%. I see the "no connection" icon from NetworkManager on both systems when the deadlock happens. I've switched the Ubuntu machine back to Unity and haven't had any problems since.
I have this problem on both of my systems too. The first one has ATI and the second one has Intel graphic card. Both of my systems have ubuntu 12.04 amd64, gnome-shell and the open source driver.
Same problem here. Killing (kill -9) gnome-shell from a console solves the problem (gnome-shell restarts and everything is ok). It is a semi-random bug which happens from time to time for every user who log on the system (recent arch linux).
I've had this happen a few times, including today. The nasty thing about this bug is that when gnome-shell freezes, other apps don't. You can interact with them, you just don't know you're doing it. This once happened to me so soon after unlocking the screen that I thought it was still locked and typed my password and pressed Enter. While the keyboard focus was on a text entry box a website. Oops. Anyway, I spent two hours in /dev/tty1 googling stuff with links and installing debug symbols, so I hope the full C and JavaScript stacks can be useful: https://gist.github.com/mgedmin/8044562 I'm on Ubuntu GNOME 13.10, with gnome-shell 3.8.4-0ubuntu5.
(In reply to comment #13) > Anyway, I spent two hours in /dev/tty1 googling stuff with links and installing > debug symbols, so I hope the full C and JavaScript stacks can be useful: > https://gist.github.com/mgedmin/8044562 Looks like a duplicate of bug 711006 which was fixed in GLib by https://git.gnome.org/browse/glib/commit/?id=c8aba61713ec0f674fa0dc986db3b2db3cdd0c41
AFAIU the problem is that you can't call some_cancellable.cancel() from inside the cancel callback of a_different_cancellable, because deadlock. So it should be possible to work around this by changing gnome-shell's background.js to delay that cancel() invocation using Glib.idle_add(), right? Untested code sketch: https://gist.github.com/mgedmin/8044562#comment-972444 (I'm thinking that if Ubuntu GNOME 14.04 stays stuck with glib 2.38 and they decide it's too risky to backport that glib patch, it would be nice to at least get this instance of this bug fixed.)
Marius, Ubuntu Trusty is tracking glib 2.39
GNOME is going to shut down bugzilla.gnome.org in favor of gitlab.gnome.org. As part of that, we are mass-closing older open tickets in bugzilla.gnome.org which have not seen updates for a longer time (resources are unfortunately quite limited so not every ticket can get handled). If you can still reproduce the situation described in this ticket in a recent and supported software version, then please follow https://wiki.gnome.org/GettingInTouch/BugReportingGuidelines and create a new ticket at https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/ Thank you for your understanding and your help.