If gnome-shell is started directly (instead of through gnome-session), it might deadlock with no output to the screen
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
GNOME Shell |
New
|
Unknown
|
|||
OEM Priority Project |
New
|
Undecided
|
Unassigned | ||
gnome-shell (Ubuntu) |
New
|
Undecided
|
Unassigned |
Bug Description
If gnome-shell is launched directly instead of launched through gnome-session, the process spawning `ibus-daemon` might cause deadlock and unable to start the graphics.
Since `ibusManager.js` checks whether service `org.freedeskto
I tried using gdb to gnome-shell and discovered it's hanging in a child process spawning `ibus-daemon`, but is still in child_setup of `Glib.spawn_async` function:
```
root@dell-
== Stack trace for context 0x5584da793180 ==
#0 5584dbd2d478 i resource:
#1 5584dbd2d3a8 i resource:
#2 5584dbd2d308 i resource:
#3 5584dbd2d268 i self-hosted:689 (34e3dc212650 @ 15)
```
which is, in ibusManager.js:
```
const [success_, pid] = GLib.spawn_async(
() => {
}
);
```
Further code tracing found out that the deadlock is not during the execution of the function (`restore_
Currently my propose to work around this issue is to add a 5 second `setTimeout` to the caller of `_spawn` function in `ibusManager.js`.
I've lost debugging information but I can try reproducing the issue and give the backtrace from gdb if needed.
tags: | added: oem-priority originate-from-2017628 somerville |
Changed in gnome-shell: | |
status: | Unknown → New |