From: Arseny Maslennikov Date: Wed, 29 Aug 2018 01:07:55 +0000 (+0300) Subject: udev: Introduce predictable naming for InfiniBand NICs X-Git-Tag: v240~699^2~3 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=938d30aa98df887797c9e05074a562ddacdcdf5e;p=thirdparty%2Fsystemd.git udev: Introduce predictable naming for InfiniBand NICs We've long neglected IP-over-InfiniBand network interfaces, let's treat them the same way we treat anyone else. IPoIB interfaces will retain the 'ib' prefix; otherwise the naming scheme is the same one we use for other network interfaces. E.g. a IPoIB network device provided by a PCI card at bus 21 slot 0 function 6 will be named 'ibp21s0f6'. --- diff --git a/src/udev/udev-builtin-net_id.c b/src/udev/udev-builtin-net_id.c index cb49ade4d8f..239a825ae5c 100644 --- a/src/udev/udev-builtin-net_id.c +++ b/src/udev/udev-builtin-net_id.c @@ -11,6 +11,7 @@ * * Two character prefixes based on the type of interface: * en — Ethernet + * ib — InfiniBand * sl — serial line IP (slip) * wl — wlan * ww — wwan @@ -67,6 +68,12 @@ * ID_NET_NAME_MAC=wlx0024d7e31130 * ID_NET_NAME_PATH=wlp3s0 * + * PCI IB host adapter with 2 ports: + * /sys/devices/pci0000:00/0000:00:03.0/0000:15:00.0/net/ibp21s0f0 + * ID_NET_NAME_PATH=ibp21s0f0 + * /sys/devices/pci0000:00/0000:00:03.0/0000:15:00.1/net/ibp21s0f1 + * ID_NET_NAME_PATH=ibp21s0f1 + * * USB built-in 3G modem: * /sys/devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.4/2-1.4:1.6/net/wwp0s29u1u4i6 * ID_NET_NAME_MAC=wwx028037ec0200 @@ -704,7 +711,9 @@ static int builtin_net_id(struct udev_device *dev, int argc, char *argv[], bool struct netnames names = {}; int err; - /* handle only ARPHRD_ETHER and ARPHRD_SLIP devices */ + /* handle only ARPHRD_ETHER, ARPHRD_SLIP + * and ARPHRD_INFINIBAND devices + */ s = udev_device_get_sysattr_value(dev, "type"); if (!s) return EXIT_FAILURE; @@ -713,6 +722,9 @@ static int builtin_net_id(struct udev_device *dev, int argc, char *argv[], bool case ARPHRD_ETHER: prefix = "en"; break; + case ARPHRD_INFINIBAND: + prefix = "ib"; + break; case ARPHRD_SLIP: prefix = "sl"; break;