The issue seems to be triggered by the code in src/udev/udev-
event.c::rename_netif()
static int rename_netif(struct udev_event *event)
{
struct udev_device *dev = event->dev;
int sk;
struct ifreq ifr;
int err;
log_debug("changing net interface name from '%s' to '%s'\n",
udev_device_get_sysname(dev), event->name);
sk = socket(PF_INET, SOCK_DGRAM, 0);
if (sk < 0) {
err = -errno;
log_error("error opening socket: %m\n");
return err;
}
memset(&ifr, 0x00, sizeof(struct ifreq));
strscpy(ifr.ifr_name, IFNAMSIZ, udev_device_get_sysname(dev));
strscpy(ifr.ifr_newname, IFNAMSIZ, event->name);
err = ioctl(sk, SIOCSIFNAME, &ifr);
if (err >= 0) {
print_kmsg("renamed network interface %s to %s\n",
ifr.ifr_name, ifr.ifr_newname);
} else {
err = -errno;
log_error("error changing net interface name %s to %s: %m\n",
ifr.ifr_name, ifr.ifr_newname);
}
close(sk);
return err;
}
It seems as if the call to ioctl(sk, SIOCSIFNAME, &ifr) returns error
code -EEXIST (17, 0x11)).
$ man 7 netdevice | grep -A 2 SIOCSIFNAME
SIOCSIFNAME
Changes the name of the interface specified in ifr_name to
ifr_newname. This is a privileged operation. It is
only allowed when the interface is not up.
"It is only allowed when the interface is not up" but the dmesg log
shows that the IPv6 protocol is already up on those interfaces
[ 19.251979] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
[ 19.251985] IPv6: ADDRCONF(NETDEV_UP): eth1: link is not ready
[ 19.251990] IPv6: ADDRCONF(NETDEV_UP): eth2: link is not ready
[ 19.251995] IPv6: ADDRCONF(NETDEV_UP): eth3: link is not ready
[ 19.251999] IPv6: ADDRCONF(NETDEV_UP): eth4: link is not ready
[ 22.029079] systemd-udevd[1348]: error changing net interface name eth2 to
eth1: File exists
--
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1235162
Title:
Persistent net names via /etc/udev/rules.d/70-persistent-net.rules are
ignored
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/systemd/+bug/1235162/+subscriptions
--
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs