Cloning to evaluate for inclusion in RHEL 7.
+++ This bug was initially created as a clone of Bug #1673321 +++
Description of problem:
Currently, NetworkManager only allows to specify devices by name or MAC address. Since the device name is not stable and the MAC address requires an inventory about which MAC addresses are used, it would be nice to be able to specify a network card by PCI address, i.e. 0000:00:1f.6.
This could be implemented by a match setting that already exists for interface-name but not yet for PCI ID.
--- Additional comment from Thomas Haller on 2019-02-07 11:38:10 UTC ---
do you know how to obtain the PCI address?
--- Additional comment from Thomas Haller on 2019-02-07 11:56:43 UTC ---
- grep PCI_SLOT_NAME /sys/class/net/*/device/uevent
- ethtool -i eth0
- which uses ETHTOOL_GDRVINFO and "struct ethtool_drvinfo"
- udevadm info -a -p /sys/class/net/eth0
- sudo lshw -c network -businfo
- lspci -D
- udevadm info /sys/class/net/eth0
Note in `man systemd.link` there is:
A whitespace-separated list of shell-style globs matching the persistent path, as exposed by the udev property "ID_PATH".
$ udevadm info /sys/class/net/eth0 | grep ID_PATH=
So, we probably want to implement this udev "path".
Cloned for the justification of the network role's objective to provide a uniform configuration experience across multiple RHEL major releases.