[BRIDGE]: fix locking and memory leak in br_add_bridge
authorJiri Benc <jbenc@suse.cz>
Mon, 5 Jun 2006 23:39:34 +0000 (16:39 -0700)
committerDavid S. Miller <davem@davemloft.net>
Mon, 5 Jun 2006 23:39:34 +0000 (16:39 -0700)
commit36485707bbd9729e0c52315b173aeed9bc2303dd
tree78997f28e14702d058f90a8ba80a20abcead57d6
parent8c893ff6abbac0c7c05b1cb9bfb6e2dfc4538c75
[BRIDGE]: fix locking and memory leak in br_add_bridge

There are several bugs in error handling in br_add_bridge:
- when dev_alloc_name fails, allocated net_device is not freed
- unregister_netdev is called when rtnl lock is held
- free_netdev is called before netdev_run_todo has a chance to be run after
  unregistering net_device

Signed-off-by: Jiri Benc <jbenc@suse.cz>
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/bridge/br_if.c