X-Git-Url: https://bbs.cooldavid.org/git/?a=blobdiff_plain;f=drivers%2Fnet%2Fbonding%2Fbond_main.c;h=7703d35de65d6979fba486d6f238f8322bc65d06;hb=69259abb64d4da77273bf59accfc9fa79e7165f4;hp=a0bf35d0d4f5168036a5e28cd5f1328df4481070;hpb=dd53df265b1ee7a1fbbc76bb62c3bec2383bbd44;p=net-next-2.6.git diff --git a/drivers/net/bonding/bond_main.c b/drivers/net/bonding/bond_main.c index a0bf35d0d4f..7703d35de65 100644 --- a/drivers/net/bonding/bond_main.c +++ b/drivers/net/bonding/bond_main.c @@ -5226,6 +5226,15 @@ int bond_create(struct net *net, const char *name) res = dev_alloc_name(bond_dev, "bond%d"); if (res < 0) goto out; + } else { + /* + * If we're given a name to register + * we need to ensure that its not already + * registered + */ + res = -EEXIST; + if (__dev_get_by_name(net, name) != NULL) + goto out; } res = register_netdevice(bond_dev);