Revert "net: Guaranetee the proper ordering of the loopback device."

This reverts commit ae33bc40c0.
This commit is contained in:
David S. Miller 2008-11-07 22:52:14 -08:00
parent 167c6274c3
commit 3d8160b149
3 changed files with 11 additions and 15 deletions

View File

@ -204,8 +204,17 @@ static __net_exit void loopback_net_exit(struct net *net)
unregister_netdev(dev);
}
/* Registered in net/core/dev.c */
struct pernet_operations __net_initdata loopback_net_ops = {
static struct pernet_operations __net_initdata loopback_net_ops = {
.init = loopback_net_init,
.exit = loopback_net_exit,
};
static int __init loopback_init(void)
{
return register_pernet_device(&loopback_net_ops);
}
/* Loopback is special. It should be initialized before any other network
* device and network subsystem.
*/
fs_initcall(loopback_init);

View File

@ -1766,7 +1766,6 @@ static inline int skb_bond_should_drop(struct sk_buff *skb)
return 0;
}
extern struct pernet_operations __net_initdata loopback_net_ops;
#endif /* __KERNEL__ */
#endif /* _LINUX_DEV_H */

View File

@ -4909,18 +4909,6 @@ static int __init net_dev_init(void)
if (register_pernet_subsys(&netdev_net_ops))
goto out;
/* The loopback device is special if any other network devices
* is present in a network namespace the loopback device must
* be present. Since we now dynamically allocate and free the
* loopback device ensure this invariant is maintained by
* keeping the loopback device as the first device on the
* list of network devices. Ensuring the loopback devices
* is the first device that appears and the last network device
* that disappears.
*/
if (register_pernet_device(&loopback_net_ops))
goto out;
if (register_pernet_device(&default_device_ops))
goto out;