diff options
Diffstat (limited to 'sys')
| -rw-r--r-- | sys/net/if_vlan.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/sys/net/if_vlan.c b/sys/net/if_vlan.c index 4f6e0bd98585..55eb541d4f5f 100644 --- a/sys/net/if_vlan.c +++ b/sys/net/if_vlan.c @@ -421,8 +421,11 @@ vlan_clone_create(struct if_clone *ifc, char *name, size_t len) static int vlan_clone_destroy(struct if_clone *ifc, struct ifnet *ifp) { + int unit; struct ifvlan *ifv = ifp->if_softc; + unit = ifp->if_dunit; + VLAN_LOCK(); LIST_REMOVE(ifv, ifv_list); vlan_unconfig(ifp); @@ -432,6 +435,8 @@ vlan_clone_destroy(struct if_clone *ifc, struct ifnet *ifp) free(ifv, M_VLAN); + ifc_free_unit(ifc, unit); + return (0); } |
