Loading drivers/net/loopback.c +11 −2 Original line number Diff line number Diff line Loading @@ -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); include/linux/netdevice.h +0 −1 Original line number Diff line number Diff line Loading @@ -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 */ net/core/dev.c +0 −12 Original line number Diff line number Diff line Loading @@ -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; Loading Loading
drivers/net/loopback.c +11 −2 Original line number Diff line number Diff line Loading @@ -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);
include/linux/netdevice.h +0 −1 Original line number Diff line number Diff line Loading @@ -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 */
net/core/dev.c +0 −12 Original line number Diff line number Diff line Loading @@ -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; Loading