Changeset View
Changeset View
Standalone View
Standalone View
sys/net/if.c
Show First 20 Lines • Show All 515 Lines • ▼ Show 20 Lines | vnet_if_return(const void *unused __unused) | ||||
for (int j = 0; j < i; j++) { | for (int j = 0; j < i; j++) { | ||||
sx_xlock(&ifnet_detach_sxlock); | sx_xlock(&ifnet_detach_sxlock); | ||||
if_vmove(pending[j], pending[j]->if_home_vnet); | if_vmove(pending[j], pending[j]->if_home_vnet); | ||||
sx_xunlock(&ifnet_detach_sxlock); | sx_xunlock(&ifnet_detach_sxlock); | ||||
} | } | ||||
free(pending, M_IFNET); | free(pending, M_IFNET); | ||||
} | } | ||||
VNET_SYSUNINIT(vnet_if_return, SI_SUB_VNET_DONE, SI_ORDER_ANY, | VNET_SHUTDOWN(vnet_if_return, SI_SUB_PROTO_IF, SI_ORDER_ANY, | ||||
vnet_if_return, NULL); | vnet_if_return, NULL); | ||||
#endif | #endif | ||||
/* | /* | ||||
* Allocate a struct ifnet and an index for an interface. A layer 2 | * Allocate a struct ifnet and an index for an interface. A layer 2 | ||||
* common structure will also be allocated if an allocation routine is | * common structure will also be allocated if an allocation routine is | ||||
* registered for the passed type. | * registered for the passed type. | ||||
*/ | */ | ||||
▲ Show 20 Lines • Show All 4,344 Lines • Show Last 20 Lines |