|
@@ -942,14 +942,15 @@ rollback:
|
|
ret = notifier_to_errno(ret);
|
|
ret = notifier_to_errno(ret);
|
|
|
|
|
|
if (ret) {
|
|
if (ret) {
|
|
- if (err) {
|
|
|
|
- printk(KERN_ERR
|
|
|
|
- "%s: name change rollback failed: %d.\n",
|
|
|
|
- dev->name, ret);
|
|
|
|
- } else {
|
|
|
|
|
|
+ /* err >= 0 after dev_alloc_name() or stores the first errno */
|
|
|
|
+ if (err >= 0) {
|
|
err = ret;
|
|
err = ret;
|
|
memcpy(dev->name, oldname, IFNAMSIZ);
|
|
memcpy(dev->name, oldname, IFNAMSIZ);
|
|
goto rollback;
|
|
goto rollback;
|
|
|
|
+ } else {
|
|
|
|
+ printk(KERN_ERR
|
|
|
|
+ "%s: name change rollback failed: %d.\n",
|
|
|
|
+ dev->name, ret);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|