bridge: move br_net_exit() to br.c
And it can become static. Cc: Stephen Hemminger <stephen@networkplumber.org> Cc: David S. Miller <davem@davemloft.net> Signed-off-by: Cong Wang <xiyou.wangcong@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
ae237b3ede
commit
b86f81cca9
|
@ -22,14 +22,29 @@
|
||||||
|
|
||||||
#include "br_private.h"
|
#include "br_private.h"
|
||||||
|
|
||||||
static const struct stp_proto br_stp_proto = {
|
static void __net_exit br_net_exit(struct net *net)
|
||||||
.rcv = br_stp_rcv,
|
{
|
||||||
};
|
struct net_device *dev;
|
||||||
|
LIST_HEAD(list);
|
||||||
|
|
||||||
|
rtnl_lock();
|
||||||
|
for_each_netdev(net, dev)
|
||||||
|
if (dev->priv_flags & IFF_EBRIDGE)
|
||||||
|
br_dev_delete(dev, &list);
|
||||||
|
|
||||||
|
unregister_netdevice_many(&list);
|
||||||
|
rtnl_unlock();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
static struct pernet_operations br_net_ops = {
|
static struct pernet_operations br_net_ops = {
|
||||||
.exit = br_net_exit,
|
.exit = br_net_exit,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
static const struct stp_proto br_stp_proto = {
|
||||||
|
.rcv = br_stp_rcv,
|
||||||
|
};
|
||||||
|
|
||||||
static int __init br_init(void)
|
static int __init br_init(void)
|
||||||
{
|
{
|
||||||
int err;
|
int err;
|
||||||
|
|
|
@ -455,18 +455,3 @@ int br_del_if(struct net_bridge *br, struct net_device *dev)
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
void __net_exit br_net_exit(struct net *net)
|
|
||||||
{
|
|
||||||
struct net_device *dev;
|
|
||||||
LIST_HEAD(list);
|
|
||||||
|
|
||||||
rtnl_lock();
|
|
||||||
for_each_netdev(net, dev)
|
|
||||||
if (dev->priv_flags & IFF_EBRIDGE)
|
|
||||||
br_dev_delete(dev, &list);
|
|
||||||
|
|
||||||
unregister_netdevice_many(&list);
|
|
||||||
rtnl_unlock();
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
|
@ -407,7 +407,6 @@ void br_flood_forward(struct net_bridge *br, struct sk_buff *skb,
|
||||||
void br_port_carrier_check(struct net_bridge_port *p);
|
void br_port_carrier_check(struct net_bridge_port *p);
|
||||||
int br_add_bridge(struct net *net, const char *name);
|
int br_add_bridge(struct net *net, const char *name);
|
||||||
int br_del_bridge(struct net *net, const char *name);
|
int br_del_bridge(struct net *net, const char *name);
|
||||||
void br_net_exit(struct net *net);
|
|
||||||
int br_add_if(struct net_bridge *br, struct net_device *dev);
|
int br_add_if(struct net_bridge *br, struct net_device *dev);
|
||||||
int br_del_if(struct net_bridge *br, struct net_device *dev);
|
int br_del_if(struct net_bridge *br, struct net_device *dev);
|
||||||
int br_min_mtu(const struct net_bridge *br);
|
int br_min_mtu(const struct net_bridge *br);
|
||||||
|
|
Loading…
Reference in New Issue