diff --git a/sys/net/if.c b/sys/net/if.c --- a/sys/net/if.c +++ b/sys/net/if.c @@ -1115,6 +1115,8 @@ altq_detach(&ifp->if_snd); #endif + rt_flushifroutes(ifp); + if_purgeaddrs(ifp); EVENTHANDLER_INVOKE(ifnet_departure_event, ifp); if_purgemaddrs(ifp); @@ -1139,8 +1141,6 @@ } else IF_ADDR_WUNLOCK(ifp); } - - rt_flushifroutes(ifp); } #ifdef VIMAGE