diff options
Diffstat (limited to 'sys/net/if.c')
-rw-r--r-- | sys/net/if.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/sys/net/if.c b/sys/net/if.c index f7dbf47..b5c8295 100644 --- a/sys/net/if.c +++ b/sys/net/if.c @@ -600,6 +600,9 @@ if_purgeaddrs(struct ifnet *ifp) /* * Detach an interface, removing it from the * list of "active" interfaces and freeing the struct ifnet. + * + * XXXRW: There are some significant questions about event ordering, and + * how to prevent things from starting to use the interface during detach. */ void if_detach(struct ifnet *ifp) @@ -637,6 +640,10 @@ if_detach(struct ifnet *ifp) if_purgeaddrs(ifp); +#ifdef INET + in_ifdetach(ifp); +#endif + #ifdef INET6 /* * Remove all IPv6 kernel structs related to ifp. This should be done |