From 13d6a99c44c8ff3298f4d447b321000ec4cd4d8d Mon Sep 17 00:00:00 2001 From: "David S. Miller" Date: Mon, 19 May 2003 09:23:57 -0700 Subject: [NET]: More device register/unregister fixing. Revert the rtnl_lock API change, it is totally unneeded. Instead we manage the todo work inside of net/core/dev.c Also, we have to move sbin hotplug invocation outside of the RTNL semaphore as well, both for register and unregister. --- include/linux/netdevice.h | 2 +- include/linux/rtnetlink.h | 3 +-- 2 files changed, 2 insertions(+), 3 deletions(-) (limited to 'include/linux') diff --git a/include/linux/netdevice.h b/include/linux/netdevice.h index 27716f740fb0..94d077ef70be 100644 --- a/include/linux/netdevice.h +++ b/include/linux/netdevice.h @@ -625,7 +625,7 @@ static inline int netif_rx_ni(struct sk_buff *skb) } /* Called by rtnetlink.c:rtnl_unlock() */ -extern void netdev_wait_and_finish_unregister(struct net_device **list); +extern void netdev_run_todo(void); static inline void dev_put(struct net_device *dev) { diff --git a/include/linux/rtnetlink.h b/include/linux/rtnetlink.h index 78f491336886..1b0998fd604f 100644 --- a/include/linux/rtnetlink.h +++ b/include/linux/rtnetlink.h @@ -607,8 +607,7 @@ extern struct semaphore rtnl_sem; rtnl->data_ready(rtnl, 0); \ } while(0) -extern struct net_device **rtnl_netdev_unregister_list; -extern void rtnl_lock(struct net_device **unregister_list); +extern void rtnl_lock(void); extern void rtnl_unlock(void); extern void rtnetlink_init(void); -- cgit v1.2.3