T4966: Delay UDEV execution, avoid rename deadlock

UDEV will rename interfaces from whatever the kernel called them
to eX before converting them to ethX during init. In current VyOS,
the second renaming operation can run into a lock on the adapter
preventing altering its name. As a result, the adapter will remain
in the eX configuration, preventing proper execution of subsequent
scripts and configuration stanzas.

The initial renaming step has to remain as it is needed to work
around other issues, which leaves the somewhat hacky approach of
delaying the second renaming step slightly in an effort to let the
device lock holders settle, releasing it for rename to ethX. This
is accomplished by a kernel commandline paramter (3s), which can be
tweaked to reduce impact or wait longer as needed on different
devices - udev.exec_delay=3
This commit is contained in:
RageLtMan 2023-01-31 13:13:55 -05:00
parent 09ec7740dc
commit f24c7ca09f

View File

@ -1,20 +1,20 @@
menuentry "VyOS (KVM console)" {
linux /boot//vmlinuz boot=live quiet rootdelay=5 noautologin net.ifnames=0 biosdevname=0 vyos-union=/boot/ console=ttyS0,115200 console=tty0
linux /boot//vmlinuz boot=live quiet rootdelay=5 noautologin net.ifnames=0 biosdevname=0 udev.exec_delay=3 vyos-union=/boot/ console=ttyS0,115200 console=tty0
initrd /boot//initrd.img
}
menuentry "VyOS (Serial console)" {
linux /boot//vmlinuz boot=live quiet rootdelay=5 noautologin net.ifnames=0 biosdevname=0 vyos-union=/boot/ console=tty0 console=ttyS0,115200
linux /boot//vmlinuz boot=live quiet rootdelay=5 noautologin net.ifnames=0 biosdevname=0 udev.exec_delay=3 vyos-union=/boot/ console=tty0 console=ttyS0,115200
initrd /boot//initrd.img
}
menuentry "Lost password change (KVM console)" {
linux /boot//vmlinuz boot=live quiet rootdelay=5 noautologin net.ifnames=0 biosdevname=0 vyos-union=/boot/ console=ttyS0,115200 console=tty0 init=/opt/vyatta/sbin/standalone_root_pw_reset
linux /boot//vmlinuz boot=live quiet rootdelay=5 noautologin net.ifnames=0 biosdevname=0 udev.exec_delay=3 vyos-union=/boot/ console=ttyS0,115200 console=tty0 init=/opt/vyatta/sbin/standalone_root_pw_reset
initrd /boot//initrd.img
}
menuentry "Lost password change (Serial console)" {
linux /boot//vmlinuz boot=live quiet rootdelay=5 noautologin net.ifnames=0 biosdevname=0 vyos-union=/boot/ console=tty0 console=ttyS0,115200 init=/opt/vyatta/sbin/standalone_root_pw_reset
linux /boot//vmlinuz boot=live quiet rootdelay=5 noautologin net.ifnames=0 biosdevname=0 udev.exec_delay=3 vyos-union=/boot/ console=tty0 console=ttyS0,115200 init=/opt/vyatta/sbin/standalone_root_pw_reset
initrd /boot//initrd.img
}