Changeset View
Changeset View
Standalone View
Standalone View
head/sys/netinet/in.c
Show First 20 Lines • Show All 1,159 Lines • ▼ Show 20 Lines | in_lltable_free_entry(struct lltable *llt, struct llentry *lle) | ||||
KASSERT(llt != NULL, ("lltable is NULL")); | KASSERT(llt != NULL, ("lltable is NULL")); | ||||
/* Unlink entry from table if not already */ | /* Unlink entry from table if not already */ | ||||
if ((lle->la_flags & LLE_LINKED) != 0) { | if ((lle->la_flags & LLE_LINKED) != 0) { | ||||
IF_AFDATA_WLOCK_ASSERT(llt->llt_ifp); | IF_AFDATA_WLOCK_ASSERT(llt->llt_ifp); | ||||
lltable_unlink_entry(llt, lle); | lltable_unlink_entry(llt, lle); | ||||
} | } | ||||
/* cancel timer */ | |||||
if (callout_stop(&lle->lle_timer) > 0) | |||||
LLE_REMREF(lle); | |||||
/* Drop hold queue */ | /* Drop hold queue */ | ||||
pkts_dropped = llentry_free(lle); | pkts_dropped = llentry_free(lle); | ||||
ARPSTAT_ADD(dropped, pkts_dropped); | ARPSTAT_ADD(dropped, pkts_dropped); | ||||
} | } | ||||
static int | static int | ||||
in_lltable_rtcheck(struct ifnet *ifp, u_int flags, const struct sockaddr *l3addr) | in_lltable_rtcheck(struct ifnet *ifp, u_int flags, const struct sockaddr *l3addr) | ||||
{ | { | ||||
▲ Show 20 Lines • Show All 329 Lines • Show Last 20 Lines |