bridge: allow creating bridge devices with netlink
authorstephen hemminger <shemminger@vyatta.com>
Mon, 4 Apr 2011 14:03:32 +0000 (14:03 +0000)
committerDavid S. Miller <davem@davemloft.net>
Tue, 5 Apr 2011 00:22:28 +0000 (17:22 -0700)
commitbb900b27a2f49b37bc38c08e656ea13048fee13b
treedbea65f697ee131de15a7b6d94466744ad346594
parent36fd2b63e3b4336744cf3f6a6c9543ecbec334a7
bridge: allow creating bridge devices with netlink

Add netlink device ops to allow creating bridge device via netlink.
This works in a manner similar to vlan, macvlan and bonding.

Example:
  # ip link add link dev br0 type bridge
  # ip link del dev br0

The change required rearranging initializtion code to deal with
being called by create link. Most of the initialization happens
in br_dev_setup, but allocation of stats is done in ndo_init callback
to deal with allocation failure. Sysfs setup has to wait until
after the network device kobject is registered.

Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/bridge/br.c
net/bridge/br_device.c
net/bridge/br_if.c
net/bridge/br_netlink.c
net/bridge/br_notify.c