lightdm-1.2.0 hangs in exit_cb()
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Light Display Manager |
Invalid
|
Undecided
|
Unassigned | ||
Gentoo Linux |
New
|
Undecided
|
Unassigned |
Bug Description
When shutting down my Gentoo Linux system, lightdm-1.2.0 hangs in exit_cb().
1. OpenRC sends a SIGTERM signal to stop lightdm.
2. lightdm receives the signal and proceeds to shut down.
3. lightdm hangs in exit_cb() calling g_hash_
To demonstrate this, I added some extra debug to exit_cb():
142 static gboolean
143 exit_cb (gpointer data)
144 {
145 g_debug ("Entering exit_cb()");
146 /* Clean up display manager */
147 g_object_unref (display_manager);
148 display_manager = NULL;
149
150 /* Remove D-Bus interface */
151 g_debug ("Calling g_bus_unknown_
152 g_bus_unown_name (bus_id);
153 if (seat_bus_entries)
154 {
155 g_debug ("Calling g_hash_
156 g_hash_table_unref (seat_bus_entries);
157 }
158 if (session_
159 {
160 g_debug ("Calling g_hash_
161 g_hash_table_unref (session_
162 }
163
164 g_debug ("Exiting with return value %d", exit_code);
165 exit (exit_code);
166 }
Here is the tail of /var/log/
[+53.01s] DEBUG: Got signal 15 from process 2321
[+53.01s] DEBUG: Caught Terminated signal, shutting down
[+53.01s] DEBUG: Stopping display manager
[+53.01s] DEBUG: Stopping seat
[+53.01s] DEBUG: Stopping display
[+53.01s] DEBUG: Session 1875: Sending SIGTERM
[+53.05s] DEBUG: Greeter closed communication channel
[+53.06s] DEBUG: Session 1875 exited with return value 0
[+53.06s] DEBUG: Greeter quit
[+53.06s] DEBUG: Sending signal 15 to process 1730
[+53.35s] DEBUG: Process 1730 exited with return value 0
[+53.35s] DEBUG: X server stopped
[+53.35s] DEBUG: Removing X server authority /var/run/
[+53.35s] DEBUG: Releasing VT 7
[+53.35s] DEBUG: Display server stopped
[+53.35s] DEBUG: Display stopped
[+53.35s] DEBUG: Seat stopped
[+53.35s] DEBUG: Display manager stopped
[+53.35s] DEBUG: Stopping daemon
[+53.35s] DEBUG: Entering exit_cb()
[+53.35s] DEBUG: Calling g_bus_unknown_
[+53.35s] DEBUG: Calling g_hash_
There is no further output, thus lightdm-1.2.0 has hung in exit_cb() calling g_hash_
My previous version was lightdm-1.0.6, which exited OK.
I see the same symptoms in Gentoo using lightdm-1.1.9 and 1.2.0