From 86808372780b3b2f4529d83f1292e6c097916c47 Mon Sep 17 00:00:00 2001 From: Eric Dumazet Date: Mon, 22 Aug 2011 06:05:59 +0000 Subject: [PATCH] --- yaml --- r: 263242 b: refs/heads/master c: 11f3a6bdc2528d1ce2af50202dbf7138fdee1b34 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/net/bridge/br_if.c | 6 +++++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/[refs] b/[refs] index 23fcd33a9365..ef6d3634b98f 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 832d80aceaab995c347d62abf7c241fc3e2eb0ce +refs/heads/master: 11f3a6bdc2528d1ce2af50202dbf7138fdee1b34 diff --git a/trunk/net/bridge/br_if.c b/trunk/net/bridge/br_if.c index 2cdf0070419f..e73815456adf 100644 --- a/trunk/net/bridge/br_if.c +++ b/trunk/net/bridge/br_if.c @@ -231,6 +231,7 @@ static struct net_bridge_port *new_nbp(struct net_bridge *br, int br_add_bridge(struct net *net, const char *name) { struct net_device *dev; + int res; dev = alloc_netdev(sizeof(struct net_bridge), name, br_dev_setup); @@ -240,7 +241,10 @@ int br_add_bridge(struct net *net, const char *name) dev_net_set(dev, net); - return register_netdev(dev); + res = register_netdev(dev); + if (res) + free_netdev(dev); + return res; } int br_del_bridge(struct net *net, const char *name)