diff options
| author | Christian Breunig <christian@breunig.cc> | 2026-08-06 21:59:21 +0200 |
|---|---|---|
| committer | Christian Breunig <christian@breunig.cc> | 2026-08-08 18:33:38 +0200 |
| commit | 22cfee116c9935f4a33da4923eff189f2f646371 (patch) | |
| tree | d0a125a6178d4bbefd9515003e285479012103f2 /src/validators/interface-exists | |
| parent | 3c7aa6d76c4de62f27a0493baefe8e10044c9f9d (diff) | |
| download | vyos-1x-22cfee116c9935f4a33da4923eff189f2f646371.tar.gz vyos-1x-22cfee116c9935f4a33da4923eff189f2f646371.zip | |
T3871: make boot-time interface naming deterministic and hw-id aware
Multi-vendor PCIe NIC systems could lose or rename Ethernet/wireless
interfaces on boot, because naming was decided from a single per-device
udev event before all hardware had a chance to enumerate.
Replace that with one authoritative pass, run once configuration is
available during router startup: wait for configured hardware, apply
every hw-id binding, and name whatever has none yet by PCIe distance
from the root complex and MAC address - the same result every boot.
A node with its hw-id deleted (NIC replacement) or its whole
configuration removed is treated as an ordinary open slot, filled the
same way - recovering its original hardware whenever the interfaces
that vacated slots this boot also show up as candidates.
Boot now reports any interface still unresolved, and the pass is covered
by a new test suite in vyos-build named: make testifname
Assisted-by: Claude:claude-sonnet-5
Diffstat (limited to 'src/validators/interface-exists')
0 files changed, 0 insertions, 0 deletions
