]> git.kernelconcepts.de Git - karo-tx-linux.git/blobdiff - drivers/net/macvlan.c
arm: imx6: defconfig: update tx6 defconfigs
[karo-tx-linux.git] / drivers / net / macvlan.c
index 9bf46bd19b87bf947fd79e547bdde626c8a12097..cc9845ec91c1b1be56cc960a0768ee71b8db69c9 100644 (file)
@@ -828,22 +828,21 @@ int macvlan_common_newlink(struct net *src_net, struct net_device *dev,
                eth_hw_addr_inherit(dev, lowerdev);
        }
 
+       port->count += 1;
+       err = register_netdevice(dev);
+       if (err < 0)
+               goto destroy_port;
+
        err = netdev_upper_dev_link(lowerdev, dev);
        if (err)
                goto destroy_port;
 
-       port->count += 1;
-       err = register_netdevice(dev);
-       if (err < 0)
-               goto upper_dev_unlink;
 
        list_add_tail_rcu(&vlan->list, &port->vlans);
        netif_stacked_transfer_operstate(lowerdev, dev);
 
        return 0;
 
-upper_dev_unlink:
-       netdev_upper_dev_unlink(lowerdev, dev);
 destroy_port:
        port->count -= 1;
        if (!port->count)