You are not logged in.

#1 2026-02-24 20:26:18

jones
Member
Registered: 2013-03-14
Posts: 276

dhcpcd.service causes slow poweroff with 90 seconds-long timeout

I have had a slow poweroff with a timeout of dhcpcd.service for about 3 months now - ok, maybe a few more.
The thing is, I think my setup is ok or to be more exact, I do not see/error the configuration error.

What I found so far yet, ultimately, did not help:
https://bbs.archlinux.org/viewtopic.php?id=254961 => https://bugs.archlinux.org/task/66405
https://bugs.archlinux.org/task/66191
https://www.reddit.com/r/archlinux/comm … _shutdown/ => ran

Nothing changed after I removed "ipv6.disable_ipv6=1" from my systemd boot options 3 days ago.

journalctl -b -1 with the relevant parts:

Feb 24 00:18:26 ArchLinuxT480s systemd[1]: Stopped target Network.
Feb 24 00:18:26 ArchLinuxT480s systemd[1]: Stopped target Remote File Systems.
Feb 24 00:18:26 ArchLinuxT480s dhcpcd[1271]: received SIGTERM, stopping
Feb 24 00:18:26 ArchLinuxT480s dhcpcd[1271]: wlp61s0: removing interface
Feb 24 00:18:26 ArchLinuxT480s dhcpcd[1271]: script_status: /usr/lib/dhcpcd/dhcpcd-run-hooks: Terminated
Feb 24 00:18:26 ArchLinuxT480s systemd[1]: Stopping DHCP/ IPv4LL/ IPv6RA/ DHCPv6 client on all interfaces...
Feb 24 00:18:26 ArchLinuxT480s dhcpcd[1271]: enp0s31f6: removing interface
Feb 24 00:18:26 ArchLinuxT480s dhcpcd[1271]: script_status: /usr/lib/dhcpcd/dhcpcd-run-hooks: Terminated
Feb 24 00:18:26 ArchLinuxT480s systemd[1]: Stopping User Login Management...
Feb 24 00:18:26 ArchLinuxT480s systemd[1]: systemd-logind.service: Deactivated successfully.
Feb 24 00:18:26 ArchLinuxT480s systemd[1]: Stopped User Login Management.
Feb 24 00:18:26 ArchLinuxT480s systemd[1]: systemd-logind.service: Consumed 27.875s CPU time over 11h 19min 16.652s wall clock time, 7.6M memory peak.
Feb 24 00:18:26 ArchLinuxT480s systemd[1]: Stopped target User and Group Name Lookups.
Feb 24 00:19:56 ArchLinuxT480s systemd[1]: dhcpcd.service: State 'stop-sigterm' timed out. Killing.
Feb 24 00:19:56 ArchLinuxT480s systemd[1]: dhcpcd.service: Killing process 1262 (dhcpcd) with signal SIGKILL.
Feb 24 00:19:56 ArchLinuxT480s systemd[1]: dhcpcd.service: Killing process 1271 (dhcpcd) with signal SIGKILL.
Feb 24 00:19:56 ArchLinuxT480s systemd[1]: dhcpcd.service: Killing process 1272 (dhcpcd) with signal SIGKILL.
Feb 24 00:19:56 ArchLinuxT480s systemd[1]: dhcpcd.service: Killing process 1273 (dhcpcd) with signal SIGKILL.
Feb 24 00:19:56 ArchLinuxT480s systemd[1]: dhcpcd.service: Main process exited, code=killed, status=9/KILL
Feb 24 00:19:56 ArchLinuxT480s systemd[1]: dhcpcd.service: Failed with result 'timeout'.
Feb 24 00:19:56 ArchLinuxT480s systemd[1]: Stopped DHCP/ IPv4LL/ IPv6RA/ DHCPv6 client on all interfaces.

Enabled services:

$ systemctl list-unit-files  | grep dhcp
dhcpcd.service                                                                      enabled         disabled
dhcpcd@.service                                                                     disabled        disabled

dhcpcd:

$ pacman -Q dhcpcd
dhcpcd 10.3.0-1

wpa_supplicant (not that I can safely say that it is relevant, but rather safe than sorry):

$ pacman -Q wpa_supplicant
wpa_supplicant 2:2.11-5

enabled unit files:

$ systemctl list-unit-files --state=enabled
UNIT FILE                STATE   PRESET  
cups.path                enabled disabled
avahi-daemon.service     enabled disabled
cups.service             enabled disabled
dhcpcd.service           enabled disabled
getty@.service           enabled enabled 
lightdm.service          enabled disabled
ratbagd.service          enabled disabled
reflector.service        enabled disabled
systemd-resolved.service enabled enabled 
tlp.service              enabled disabled
avahi-daemon.socket      enabled disabled
cups.socket              enabled disabled
remote-fs.target         enabled enabled 
fstrim.timer             enabled disabled
reflector.timer          enabled disabled

15 unit files listed.

systemctl status dhcpcd (I changed my ipv6 address into "SOME_IP_ADDRESS":

$ systemctl status dhcpcd
● dhcpcd.service - DHCP/ IPv4LL/ IPv6RA/ DHCPv6 client on all interfaces
     Loaded: loaded (/usr/lib/systemd/system/dhcpcd.service; enabled; preset: disabled)
     Active: active (running) since Tue 2026-02-24 18:21:29 CET; 3h 1min ago
 Invocation: 98e33577590d4074bde0fedfc431231e
   Main PID: 1438 (dhcpcd)
      Tasks: 5 (limit: 18833)
     Memory: 3.6M (peak: 8.1M)
        CPU: 9.266s
     CGroup: /system.slice/dhcpcd.service
             ├─1438 "dhcpcd: [manager] [ip4] [ip6]"
             ├─1447 "dhcpcd: [privileged proxy]"
             ├─1448 "dhcpcd: [network proxy]"
             ├─1449 "dhcpcd: [control proxy]"
             └─3537 "dhcpcd: [BPF ARP] wlp61s0 192.168.2.48"

Feb 24 18:22:04 ArchLinuxT480s dhcpcd[1447]: wlp61s0: Router Advertisement from fe80::1
Feb 24 18:22:04 ArchLinuxT480s dhcpcd[1447]: wlp61s0: adding address SOME_IP_ADDRESS/64
Feb 24 18:22:04 ArchLinuxT480s dhcpcd[1447]: wlp61s0: adding route to SOME_IP_ADDRESS/64
Feb 24 18:22:04 ArchLinuxT480s dhcpcd[1447]: wlp61s0: adding default route via fe80::1
Feb 24 18:22:04 ArchLinuxT480s dhcpcd[1447]: wlp61s0: requesting DHCPv6 information
Feb 24 18:22:05 ArchLinuxT480s dhcpcd[1447]: wlp61s0: REPLY6 received from fe80::1
Feb 24 18:22:05 ArchLinuxT480s dhcpcd[1447]: wlp61s0: refresh in 86400 seconds
Feb 24 18:22:08 ArchLinuxT480s dhcpcd[1447]: wlp61s0: leased 192.168.2.48 for 1814400 seconds
Feb 24 18:22:08 ArchLinuxT480s dhcpcd[1447]: wlp61s0: adding route to 192.168.2.0/24
Feb 24 18:22:08 ArchLinuxT480s dhcpcd[1447]: wlp61s0: adding default route via 192.168.2.1

Offline

#2 2026-02-24 21:30:57

seth
Member
From: Don't DM me only for attention
Registered: 2012-09-03
Posts: 73,365

Offline

#3 2026-02-25 09:45:29

Lone_Wolf
Administrator
From: Netherlands, Europe
Registered: 2005-10-04
Posts: 14,801

Re: dhcpcd.service causes slow poweroff with 90 seconds-long timeout

systemd-resolved.service enabled enabled

dhcpcd uses resolv.conf to manage DNS servers and systemd-resolved is not great in cooperating with programs that use resolv.conf .
disable systemd-resolved or check https://wiki.archlinux.org/title/Systemd-resolved#DNS for other possibilities to mitigate the issues.


Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.

clean chroot building not flexible enough ?
Try clean chroot manager by graysky

Offline

#4 2026-02-25 15:00:48

seth
Member
From: Don't DM me only for attention
Registered: 2012-09-03
Posts: 73,365

Re: dhcpcd.service causes slow poweroff with 90 seconds-long timeout

https://wiki.archlinux.org/title/Dhcpcd … esolv.conf but I don't think any conflict here would cause this specific symptom.

Offline

#5 2026-02-26 10:42:59

jones
Member
Registered: 2013-03-14
Posts: 276

Re: dhcpcd.service causes slow poweroff with 90 seconds-long timeout

The downgrade solved the issue (temporarily). Added dhcpcd to IgnorePkg.
Thanks.

Lone_Wolf wrote:
systemd-resolved.service enabled enabled

dhcpcd uses resolv.conf to manage DNS servers and systemd-resolved is not great in cooperating with programs that use resolv.conf .
disable systemd-resolved or check https://wiki.archlinux.org/title/Systemd-resolved#DNS for other possibilities to mitigate the issues.

Thank you for that, I plan to look into that in the future, maybe mid-March. For now, it is all working again... flawlessly. smile

Offline

Board footer

Powered by FluxBB