From 4a126e31704ab45d8da425fe4e57f3eec817f9f3 Mon Sep 17 00:00:00 2001 From: Joe Slater Date: Thu, 18 Jan 2024 10:04:31 -0800 Subject: [PATCH] eudev: modify predictable network if name search Consider a name based on mac address in addition to those based on slot or path. Note that as of this commit predictable naming is suppressed by eudev, but can be enabled by removing /etc/udev/rules.d/80-net-name-slot.rules from the root filesystem. (From OE-Core rev: 4a7b42fcf6981d3120c08091a7ed3d4d7bcd41f0) Signed-off-by: Joe Slater Signed-off-by: Alexandre Belloni Signed-off-by: Richard Purdie --- meta/recipes-core/udev/eudev/netifnames.patch | 17 +++++++++++++++++ meta/recipes-core/udev/eudev_3.2.14.bb | 2 ++ 2 files changed, 19 insertions(+) create mode 100644 meta/recipes-core/udev/eudev/netifnames.patch diff --git a/meta/recipes-core/udev/eudev/netifnames.patch b/meta/recipes-core/udev/eudev/netifnames.patch new file mode 100644 index 0000000000..8f6e9a1538 --- /dev/null +++ b/meta/recipes-core/udev/eudev/netifnames.patch @@ -0,0 +1,17 @@ +eudev: consider ID_NET_NAME_MAC as an interface name + +eudev might not create names based on slot or path. + +Upstream-Status: Submitted [github.com/eudev-project/eudev/pull/274] + +Signed-off-by: Joe Slater + +--- a/rules/80-net-name-slot.rules ++++ b/rules/80-net-name-slot.rules +@@ -10,5 +10,6 @@ ENV{net.ifnames}=="0", GOTO="net_name_sl + NAME=="", ENV{ID_NET_NAME_ONBOARD}!="", NAME="$env{ID_NET_NAME_ONBOARD}" + NAME=="", ENV{ID_NET_NAME_SLOT}!="", NAME="$env{ID_NET_NAME_SLOT}" + NAME=="", ENV{ID_NET_NAME_PATH}!="", NAME="$env{ID_NET_NAME_PATH}" ++NAME=="", ENV{ID_NET_NAME_MAC}!="", NAME="$env{ID_NET_NAME_MAC}" + + LABEL="net_name_slot_end" diff --git a/meta/recipes-core/udev/eudev_3.2.14.bb b/meta/recipes-core/udev/eudev_3.2.14.bb index d0758691bd..ddb3c3340f 100644 --- a/meta/recipes-core/udev/eudev_3.2.14.bb +++ b/meta/recipes-core/udev/eudev_3.2.14.bb @@ -10,6 +10,7 @@ DEPENDS = "gperf-native" PROVIDES = "udev" SRC_URI = "${GITHUB_BASE_URI}/download/v${PV}/${BP}.tar.gz \ + file://netifnames.patch \ file://init \ file://local.rules \ " @@ -50,6 +51,7 @@ do_install:append() { # Use classic network interface naming scheme touch ${D}${sysconfdir}/udev/rules.d/80-net-name-slot.rules + } do_install:prepend:class-target () {