[systemd-devel] systemd-ask-password causes systemd to use very high CPU

Barry Scott barry at barrys-emacs.org
Sat Jan 16 15:42:38 UTC 2021


I have a reproducible problem with systemd-ask-password.

# rpm -q systemd
systemd-246.7-2.fc33.x86_64

1. boot fedora 33
2. login to KDE
3. start a terminal and run top
4. start a terminal and run:
   systemctl >before
   systemd-ask-password 'testing: ' </dev/null >p
5. Observe that top is showing systemd using ~80% CPU
6. stop systemd-ask-password and CPU returns to idle
   systemctl >after
7. Check journal:

Jan 16 15:18:19 vmf33.chelsea.private systemd[1]: Condition check resulted in Forward Password Requests to Plymouth being skipped.
Jan 16 15:18:19 vmf33.chelsea.private systemd[1]: Condition check resulted in Forward Password Requests to Plymouth being skipped.
Jan 16 15:18:19 vmf33.chelsea.private systemd[1]: Condition check resulted in Forward Password Requests to Plymouth being skipped.
Jan 16 15:18:19 vmf33.chelsea.private systemd[1]: Condition check resulted in Forward Password Requests to Plymouth being skipped.
Jan 16 15:18:19 vmf33.chelsea.private systemd[1]: Condition check resulted in Forward Password Requests to Plymouth being skipped.
Jan 16 15:18:19 vmf33.chelsea.private systemd[1]: Condition check resulted in Forward Password Requests to Plymouth being skipped.
etc...

# journalctl -b  | grep Condition | wc -l
37555

8. run again:
   systemd-ask-password 'testing: ' </dev/null >p
9. messgae sent to all terminals:
Broadcast message from root at vmf33.chelsea.private (Sat 2021-01-16 15:28:02 GMT):

Password entry required for 'testing:' (PID 1862).
Please enter password with the systemd-tty-ask-password-agent tool.

-----

Looking at the services before and after running systemd-ask-password once I see this diff:

# diff -u before after | grep '^[-+]'
--- before      2021-01-16 15:35:51.850438282 +0000
+++ after       2021-01-16 15:36:08.875736785 +0000
-  systemd-ask-password-plymouth.path                                                                       loaded active waiting   Forward Password Requests to Plymouth Directory Watch                                                            
-  systemd-ask-password-wall.path                                                                           loaded active waiting   Forward Password Requests to Wall Directory Watch                                                                
+  systemd-ask-password-wall.path                                                                           loaded active running   Forward Password Requests to Wall Directory Watch                                                                
-  fprintd.service                                                                                          loaded active running   Fingerprint Authentication Daemon                                                                                
+  systemd-ask-password-wall.service                                                                        loaded active running   Forward Password Requests to Wall                                                                                
-196 loaded units listed. Pass --all to see loaded but inactive units, too.
+195 loaded units listed. Pass --all to see loaded but inactive units, too.

I am seeing this behaviour on two systems. A dell laptop and a VMware VM.

Is there anything I can do to help debug this?
Or just raise a big report?

What work around would you suggest I use until this is fixed?

Barry



More information about the systemd-devel mailing list