From f2cf811c8d28426cedb911f57008984de985b166 Mon Sep 17 00:00:00 2001 From: Jay Vosburgh Date: Fri, 19 Jan 2007 18:15:38 -0800 Subject: [PATCH] --- yaml --- r: 46541 b: refs/heads/master c: 09c892797688312dc8a3c4d8b37dcb7207c1d48a h: refs/heads/master i: 46539: 7042c118167aca4e6ed08024b0fe78c9d1819ebc v: v3 --- [refs] | 2 +- trunk/drivers/net/bonding/bond_main.c | 9 +++++++-- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/[refs] b/[refs] index 7b466fcf4758..50f3c9f8859f 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: e4b91c484611da385e34ff0f8bb2744ae2c735b7 +refs/heads/master: 09c892797688312dc8a3c4d8b37dcb7207c1d48a diff --git a/trunk/drivers/net/bonding/bond_main.c b/trunk/drivers/net/bonding/bond_main.c index 07b9d1f65b66..d3801a00d3d5 100644 --- a/trunk/drivers/net/bonding/bond_main.c +++ b/trunk/drivers/net/bonding/bond_main.c @@ -4756,14 +4756,19 @@ int bond_create(char *name, struct bond_params *params, struct bonding **newbond rtnl_unlock(); /* allows sysfs registration of net device */ res = bond_create_sysfs_entry(bond_dev->priv); - goto done; + if (res < 0) { + rtnl_lock(); + goto out_bond; + } + + return 0; + out_bond: bond_deinit(bond_dev); out_netdev: free_netdev(bond_dev); out_rtnl: rtnl_unlock(); -done: return res; }