Hi, I’ve recently installled gentoo
on my laptop - everything works fine except suspension, which doesnt work from within the desktop environment. I’ve installed GNOME 44, which is using wayland (by default). That is what is happening when I press suspend
in the UI or run command sudo loginctl suspend
:
- The screen goes black, but the device continues to work;
- When I press any key, the login screen emerges with an input field for typing password (the same screen that would appear if I would lock the device, but not terminate session - I mean - it is not a gdm greeting screen). When I type password correctly, the password disappears, but nothing happens (I am still at the login screen). When I type password incorrectly, the message saying that “your password is incorrect” appears, and, again, nothing happens;
- When I press Ctrl+Alt+F2, the login screen stops responding and even mouse cursor freezes for about 20-30 seconds, then it becomes responsive again.
Essentially, if I suspend from within GNOME, I will be logged out and won’t be able to log back in until I reboot the PC.
However, as I figured out, there is a workaround:
- To suspend successfully, I can switch to terminal using Ctrl+Alt+F2, then log in and type
sudo loginctl suspend
, and the system suspends successfully; - To wake the device up I press any key, then switch back using Ctrl+Alt+F1, and run command
sudo rc-service desktop-manager restart
, after a few seconds UI with login appears (gdm greeting screen).
Another workaround is to use Xorg
instead of wayland
(by selecting the respective option on gdm
greeting screen) - in this case the system suspends (though longer than usual - much longer than if I would suspend using loginctl command in linux terminal), but the session is terminated (and all open apps, off course). So it’s also not a satisfactory solution.
Apparently, the problem is in the desktop environment, but I can’t figure out what is causing the issue in particular. Please help me figure out what is the problem. My configuration:
Gnome: GNOME Shell 44.3
Kernel: Linux 6.1.57-gentoo-x86_64
VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Mullins [Radeon R4/R5 Graphics] (rev 05)
GDBus: dev-util/gdbus-codegen-2.76.4::gentoo
I’ve tried running gnome-shell
with verbose logs like this:
export G_MESSAGES_DEBUG=all
dbus-run-session -- gnome-shell --nested --wayland 2>&1 | tee log.txt
In both modifications - with wayland
and with Xorg
. The generated logs are here. I’ve marked the point which corresponds to pressing suspend
button with # PRESSED SUSPEND BUTTON
.
There is a part of syslog
(in the same gist
), which corresponds to running GNOME with wayland
and says that Gdm: Unable to activate session: Timeout was reached
. According to timestamps this message is quite close to message from gnome-shell
that Using cross-namespace EXTERNAL authentication (this will deadlock if server is GDBus < 2.73.3)
- that’s why I checked the GDBus version, which, as far as I can see, satisfies the condition.
Tried to disable gnome-extensions
, update software - doesn’t help. Tried to enable debug
system logs, but there isn’t any useful information, just some data about kernel irrelevant to suspending the device.