diff -Naur udev-141.org/udev/udev-event.c udev-141/udev/udev-event.c --- udev-141.org/udev/udev-event.c 2009-02-24 15:08:35.000000000 +0100 +++ udev-141/udev/udev-event.c 2012-10-30 12:27:00.262833136 +0100 @@ -486,45 +486,8 @@ if (err == 0) rename_netif_kernel_log(ifr); else { - int loop; - - /* see if the destination interface name already exists */ - if (errno != EEXIST) { - err(event->udev, "error changing netif name %s to %s: %m\n", - ifr.ifr_name, ifr.ifr_newname); - goto exit; - } - - /* free our own name, another process may wait for us */ - util_strlcpy(ifr.ifr_newname, udev_device_get_sysname(dev), IFNAMSIZ); - util_strlcat(ifr.ifr_newname, "_rename", IFNAMSIZ); - err = ioctl(sk, SIOCSIFNAME, &ifr); - if (err != 0) { - err(event->udev, "error changing netif name %s to %s: %m\n", + err(event->udev, "error changing netif name %s to %s: %m\n", ifr.ifr_name, ifr.ifr_newname); - goto exit; - } - - /* wait 90 seconds for our target to become available */ - util_strlcpy(ifr.ifr_name, ifr.ifr_newname, IFNAMSIZ); - util_strlcpy(ifr.ifr_newname, event->name, IFNAMSIZ); - loop = 90 * 20; - while (loop--) { - err = ioctl(sk, SIOCSIFNAME, &ifr); - if (err == 0) { - rename_netif_kernel_log(ifr); - break; - } - - if (errno != EEXIST) { - err(event->udev, "error changing net interface name %s to %s: %m\n", - ifr.ifr_name, ifr.ifr_newname); - break; - } - dbg(event->udev, "wait for netif '%s' to become free, loop=%i\n", - event->name, (90 * 20) - loop); - usleep(1000 * 1000 / 20); - } } exit: close(sk);