From: Leon Romanovsky <leonro@xxxxxxxxxxxx> Changelog: v1->v2: * Added support for on-board devices, the index is taken from ACPI _DSM object or from SMBIOS type 41 - such devices will have "o" in their name, e.g. ibo3. * Added support to PCI ARI and multifunction devices. * Added notion of PCI domain (if exists) to the name. * Honored ACPI _SUN object information - such devices will have "s" in their name. e.g. opas5. * Remove "f" from non-multifunction devices. * Don't fallback to GUID name, it should be specified explicitly by the users. All above makes device names to have same logic as netdevices. * Fixed spelling errors * Added USNIC to the list of possible protocols in Documentation v0->v1: * Added patch to bring latest rdma_netlink.h. * Squashed together patches with cmake function to create rename utility and utility patches. * Lowered number of udev rule to be consistent with other persistent naming rules. * changed vendor name with technology it is using. e.g. mlxp0s12f4 -> rocep0s12f4. * Changed default to be NETLINK_FALLBACK. * Excluded virtual devices from renaming policy. * Added documentation. -------------------------------------------------------------------------- Hi, This series introduces RDMA stable and predictable names in similar way to netdev stack. We generalize the naming scheme for RDMA devices, so users will always see names based on topology/GUID information. Such naming scheme has big advantage that the names are fully automatic, fully predictable and they stay fixed even if hardware is added or removed (i.e. no reenumeration takes place) and that broken hardware can be replaced seamlessly. Right now, we are supporting two schemes: based on PCI location and based on system image GUID information. [leonro@server ~]$ rdma dev 0: ibp0s12: node_type ca fw 16.22.1010 node_guid 248a:0703:00a5:2850 sys_image_guid 248a:0703:00a5:2850 1: ibp0s13: node_type ca fw 16.22.1010 node_guid 248a:0703:00a5:2851 sys_image_guid 248a:0703:00a5:2850 PR: https://github.com/linux-rdma/rdma-core/pull/487 Thanks Leon Romanovsky (6): Update kernel headers kernel-boot: Perform device rename to make stable names debian: Install UDEV persistence rule and utility redhat: Add persistent naming installation suse: Package persistence name UDEV rule and utility docs: Document stable names Documentation/udev.md | 49 +++ debian/rdma-core.install | 2 + kernel-boot/CMakeLists.txt | 24 ++ kernel-boot/rdma-persistent-naming.rules | 27 ++ kernel-boot/rdma_rename.c | 473 +++++++++++++++++++++++ kernel-headers/rdma/rdma_netlink.h | 20 +- providers/rxe/rxe_cfg.in | 1 + redhat/rdma-core.spec | 2 + suse/rdma-core.spec | 2 + 9 files changed, 598 insertions(+), 2 deletions(-) create mode 100644 kernel-boot/rdma-persistent-naming.rules create mode 100644 kernel-boot/rdma_rename.c -- 2.20.1