Commit a2b33e05 authored by Adam Belay's avatar Adam Belay Committed by Linus Torvalds

[PATCH] Fix ISAPNP netdev initialization

Moving isapnp further down in the bus initialization obviously sparked
some new problems.

Instead, remove the legacy netdev probing function from dev.c and give
it its own initcall later in the cycle.
parent 6fdc22ba
...@@ -422,7 +422,7 @@ static __init int trif_probe(int unit) ...@@ -422,7 +422,7 @@ static __init int trif_probe(int unit)
extern int loopback_init(void); extern int loopback_init(void);
/* Statically configured drivers -- order matters here. */ /* Statically configured drivers -- order matters here. */
void __init probe_old_netdevs(void) static int __init net_olddevs_init(void)
{ {
int num; int num;
...@@ -450,8 +450,12 @@ void __init probe_old_netdevs(void) ...@@ -450,8 +450,12 @@ void __init probe_old_netdevs(void)
#ifdef CONFIG_LTPC #ifdef CONFIG_LTPC
ltpc_probe(); ltpc_probe();
#endif #endif
return 0;
} }
device_initcall(net_olddevs_init);
/* /*
* The @dev_base list is protected by @dev_base_lock and the rtln * The @dev_base list is protected by @dev_base_lock and the rtln
* semaphore. * semaphore.
......
...@@ -494,7 +494,6 @@ extern struct net_device loopback_dev; /* The loopback */ ...@@ -494,7 +494,6 @@ extern struct net_device loopback_dev; /* The loopback */
extern struct net_device *dev_base; /* All devices */ extern struct net_device *dev_base; /* All devices */
extern rwlock_t dev_base_lock; /* Device list lock */ extern rwlock_t dev_base_lock; /* Device list lock */
extern void probe_old_netdevs(void);
extern int netdev_boot_setup_add(char *name, struct ifmap *map); extern int netdev_boot_setup_add(char *name, struct ifmap *map);
extern int netdev_boot_setup_check(struct net_device *dev); extern int netdev_boot_setup_check(struct net_device *dev);
extern struct net_device *dev_getbyhwaddr(unsigned short type, char *hwaddr); extern struct net_device *dev_getbyhwaddr(unsigned short type, char *hwaddr);
......
...@@ -3033,8 +3033,6 @@ static int __init net_dev_init(void) ...@@ -3033,8 +3033,6 @@ static int __init net_dev_init(void)
dev_boot_phase = 0; dev_boot_phase = 0;
probe_old_netdevs();
open_softirq(NET_TX_SOFTIRQ, net_tx_action, NULL); open_softirq(NET_TX_SOFTIRQ, net_tx_action, NULL);
open_softirq(NET_RX_SOFTIRQ, net_rx_action, NULL); open_softirq(NET_RX_SOFTIRQ, net_rx_action, NULL);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment