diff --git a/drivers/net/Space.c b/drivers/net/Space.c index 602ed31a5dd9309e2b9b66cf9684cb654007f9fc..9305eb9b1b98fde55e17e580f7997b2ea77129b6 100644 --- a/drivers/net/Space.c +++ b/drivers/net/Space.c @@ -349,22 +349,11 @@ static void __init trif_probe2(int unit) #endif -/* - * The loopback device is global so it can be directly referenced - * by the network code. Also, it must be first on device list. - */ -extern int loopback_init(void); - /* Statically configured drivers -- order matters here. */ static int __init net_olddevs_init(void) { int num; - if (loopback_init()) { - printk(KERN_ERR "Network loopback device setup failed\n"); - } - - #ifdef CONFIG_SBNI for (num = 0; num < 8; ++num) sbni_probe(num); diff --git a/drivers/net/loopback.c b/drivers/net/loopback.c index 82c10dec1b5ac9d739578aa4d4874573d4ad11c4..2b739fd584f1ff9042d9034548a5740f84c6aed0 100644 --- a/drivers/net/loopback.c +++ b/drivers/net/loopback.c @@ -229,9 +229,11 @@ struct net_device loopback_dev = { }; /* Setup and register the loopback device. */ -int __init loopback_init(void) +static int __init loopback_init(void) { return register_netdev(&loopback_dev); }; +module_init(loopback_init); + EXPORT_SYMBOL(loopback_dev);