+diff -Nur udev-125.vanilla/udev_device.c udev-125/udev_device.c
+--- udev-125.vanilla/udev_device.c 2008-07-18 16:26:55.000000000 +0200
++++ udev-125/udev_device.c 2010-07-25 18:15:12.289242450 +0200
+@@ -123,42 +123,7 @@
+ if (retval == 0)
+ kernel_log(ifr);
+ else {
+- int loop;
+-
+- /* see if the destination interface name already exists */
+- if (errno != EEXIST) {
+- err("error changing netif name %s to %s: %s\n", ifr.ifr_name, ifr.ifr_newname, strerror(errno));
+- goto exit;
+- }
+-
+- /* free our own name, another process may wait for us */
+- strlcpy(ifr.ifr_newname, udev->dev->kernel, IFNAMSIZ);
+- strlcat(ifr.ifr_newname, "_rename", IFNAMSIZ);
+- retval = ioctl(sk, SIOCSIFNAME, &ifr);
+- if (retval != 0) {
+- err("error changing netif name %s to %s: %s\n", ifr.ifr_name, ifr.ifr_newname, strerror(errno));
+- goto exit;
+- }
+-
+- /* wait 30 seconds for our target to become available */
+- strlcpy(ifr.ifr_name, ifr.ifr_newname, IFNAMSIZ);
+- strlcpy(ifr.ifr_newname, udev->name, IFNAMSIZ);
+- loop = 30 * 20;
+- while (loop--) {
+- retval = ioctl(sk, SIOCSIFNAME, &ifr);
+- if (retval == 0) {
+- kernel_log(ifr);
+- break;
+- }
+-
+- if (errno != EEXIST) {
+- err("error changing net interface name %s to %s: %s\n",
+- ifr.ifr_name, ifr.ifr_newname, strerror(errno));
+- break;
+- }
+- dbg("wait for netif '%s' to become free, loop=%i\n", udev->name, (30 * 20) - loop);
+- usleep(1000 * 1000 / 20);
+- }
++ err("error changing netif name %s to %s: %s\n", ifr.ifr_name, ifr.ifr_newname, strerror(errno));
+ }
+
+ exit: