-
-
Notifications
You must be signed in to change notification settings - Fork 3.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Commit 3b92c08 has been causing screen lockers to hang #13769
Comments
Hi, the bug template asks for some things, in particular the exact version number. Without that it's hard to say anything about the bug. There have been a number of fixes for 3b92c08, in particular 5afb1f2, 0917293, 471cffc. Please also attach logs (Running logind with SYSTEMD_LOG_LEVEL=debug would be great). |
I'm experiencing this issue running logind logs with debug: Hope this helps. |
Also, I believe 243.0-1 was the earliest version where this bug is present. A few users over at the-cavalry/light-locker#146 also confirmed that after a downgrade to 242.84-2 the issue is gone. |
Hi, I'm the reporter at light-locker that confirmed reverting to a version of systemd directly before 3b92c08 commit subverts the issue, and then building systemd with that commit causes it. So I'd say that's good as confirmed, as far as it comes to a commit that triggers the issue. As for the additional fixes, I use NixOS which has a fork of systemd which is based off efb536d commit. Plus there's plenty of other people with "me too" reports. I can make myself available for any logging or debugging efforts, just ask specifically. |
Thanks for the reports. Please give the PR a spin. |
The story is the same as in 471cffc: device_attach() → seat_send_changed() → sd_bus_emit_properties_changed_strv() → emit_properties_changed_on_interface() → node_vtable_get_userdata() → seat_object_find(), which returns 0 because message == NULL. But when we are emitting a signal, message is always NULL. Removing the overeager check and assert in the called function allow the signal to be emitted. Fixes systemd#13769. (cherry picked from commit 8cc64c2)
The story is the same as in 471cffc: device_attach() → seat_send_changed() → sd_bus_emit_properties_changed_strv() → emit_properties_changed_on_interface() → node_vtable_get_userdata() → seat_object_find(), which returns 0 because message == NULL. But when we are emitting a signal, message is always NULL. Removing the overeager check and assert in the called function allow the signal to be emitted. Fixes systemd#13769. (cherry picked from commit 8cc64c2)
The story is the same as in 471cffc: device_attach() → seat_send_changed() → sd_bus_emit_properties_changed_strv() → emit_properties_changed_on_interface() → node_vtable_get_userdata() → seat_object_find(), which returns 0 because message == NULL. But when we are emitting a signal, message is always NULL. Removing the overeager check and assert in the called function allow the signal to be emitted. Fixes systemd#13769. (cherry picked from commit 8cc64c2)
The story is the same as in 471cffc: device_attach() → seat_send_changed() → sd_bus_emit_properties_changed_strv() → emit_properties_changed_on_interface() → node_vtable_get_userdata() → seat_object_find(), which returns 0 because message == NULL. But when we are emitting a signal, message is always NULL. Removing the overeager check and assert in the called function allow the signal to be emitted. Fixes systemd#13769. (cherry picked from commit 8cc64c2)
Please see: https://bbs.archlinux.org/viewtopic.php?id=249053
Commit that caused the problem: 3b92c08
See also: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=929834
the-cavalry/light-locker#146
the-cavalry/light-locker#126
The text was updated successfully, but these errors were encountered: