In automatically encrypted Clevis+Tang unlock of LUKS encrypted device (dmcrypt/cryptsetup) - on top of which the ZFS Pool for / resides, dhcpcd is used in order to obtain automatically an IP address during initramfs boot.
During this phase, dhcpcd is called before interfaces have carrier causing a 29 seconds boot delay.
Boot delay is currently 45 seconds, instead of the 15 seconds that it should.
Relevant Logs:
```
dhcpcd-10.0.6 starting
[...]
no interfaces have a carrier
exiting due to oneshot
dhcpcd exited
Sleeping 29 seconds before retrying getting a DHCP lease
dhcpcd-10.0.6 starting
```
A possible workaround would be to manually edit /usr/share/initramfs-tools/scripts/functions
Changing this:
`for ROUNDTTT in 30 60 90 120; do`
To this:
`for ROUNDTTT in 5 5 5 5; do`
But the proper solution would be to continuously "scan" the state of the Interface (every Second or so), and wait until the interface is UP, before deciding to call dhcpcd.
In automatically encrypted Clevis+Tang unlock of LUKS encrypted device (dmcrypt/ cryptsetup) - on top of which the ZFS Pool for / resides, dhcpcd is used in order to obtain automatically an IP address during initramfs boot.
During this phase, dhcpcd is called before interfaces have carrier causing a 29 seconds boot delay.
Boot delay is currently 45 seconds, instead of the 15 seconds that it should.
BUG Initially reported in: https:/ /bugs.launchpad .net/ubuntu/ +source/ initramfs- tools/+ bug/2064926
Relevant Logs:
```
dhcpcd-10.0.6 starting
[...]
no interfaces have a carrier
exiting due to oneshot
dhcpcd exited
Sleeping 29 seconds before retrying getting a DHCP lease
dhcpcd-10.0.6 starting
```
A possible workaround would be to manually edit /usr/share/ initramfs- tools/scripts/ functions
Changing this:
`for ROUNDTTT in 30 60 90 120; do`
To this:
`for ROUNDTTT in 5 5 5 5; do`
But the proper solution would be to continuously "scan" the state of the Interface (every Second or so), and wait until the interface is UP, before deciding to call dhcpcd.