aboutsummaryrefslogtreecommitdiffstats
path: root/net/core/dev.c
diff options
context:
space:
mode:
Diffstat (limited to 'net/core/dev.c')
-rw-r--r--net/core/dev.c22
1 files changed, 17 insertions, 5 deletions
diff --git a/net/core/dev.c b/net/core/dev.c
index 2306d56fbb5e..31568b2068ac 100644
--- a/net/core/dev.c
+++ b/net/core/dev.c
@@ -4909,9 +4909,6 @@ static int __init net_dev_init(void)
4909 if (register_pernet_subsys(&netdev_net_ops)) 4909 if (register_pernet_subsys(&netdev_net_ops))
4910 goto out; 4910 goto out;
4911 4911
4912 if (register_pernet_device(&default_device_ops))
4913 goto out;
4914
4915 /* 4912 /*
4916 * Initialise the packet receive queues. 4913 * Initialise the packet receive queues.
4917 */ 4914 */
@@ -4928,10 +4925,25 @@ static int __init net_dev_init(void)
4928 queue->backlog.weight = weight_p; 4925 queue->backlog.weight = weight_p;
4929 } 4926 }
4930 4927
4931 netdev_dma_register();
4932
4933 dev_boot_phase = 0; 4928 dev_boot_phase = 0;
4934 4929
4930 /* The loopback device is special if any other network devices
4931 * is present in a network namespace the loopback device must
4932 * be present. Since we now dynamically allocate and free the
4933 * loopback device ensure this invariant is maintained by
4934 * keeping the loopback device as the first device on the
4935 * list of network devices. Ensuring the loopback devices
4936 * is the first device that appears and the last network device
4937 * that disappears.
4938 */
4939 if (register_pernet_device(&loopback_net_ops))
4940 goto out;
4941
4942 if (register_pernet_device(&default_device_ops))
4943 goto out;
4944
4945 netdev_dma_register();
4946
4935 open_softirq(NET_TX_SOFTIRQ, net_tx_action); 4947 open_softirq(NET_TX_SOFTIRQ, net_tx_action);
4936 open_softirq(NET_RX_SOFTIRQ, net_rx_action); 4948 open_softirq(NET_RX_SOFTIRQ, net_rx_action);
4937 4949