Document the mandatory argument to the arptimer() and
nd6_llinfo_timer() functions with a KASSERT(). Note: there is no need to return after panic. In the legacy IP case, only assign the arg after the check, in the IPv6 case, remove the extra checks for the table and interface as they have to be there unless we freed and forgot to cancel the timer. It doesn't matter anyway as we would panic on the NULL pointer deref immediately and the bug is elsewhere. This unifies the code of both address families to some extend. Reviewed by: rwatson MFC after: 6 days
This commit is contained in:
parent
be2c32910f
commit
b6078715a1
@ -163,12 +163,10 @@ static void
|
||||
arptimer(void *arg)
|
||||
{
|
||||
struct ifnet *ifp;
|
||||
struct llentry *lle = (struct llentry *)arg;
|
||||
struct llentry *lle;
|
||||
|
||||
if (lle == NULL) {
|
||||
panic("%s: NULL entry!\n", __func__);
|
||||
return;
|
||||
}
|
||||
KASSERT(arg != NULL, ("%s: arg NULL", __func__));
|
||||
lle = (struct llentry *)arg;
|
||||
ifp = lle->lle_tbl->llt_ifp;
|
||||
CURVNET_SET(ifp->if_vnet);
|
||||
IF_AFDATA_LOCK(ifp);
|
||||
|
@ -446,14 +446,9 @@ nd6_llinfo_timer(void *arg)
|
||||
struct ifnet *ifp;
|
||||
struct nd_ifinfo *ndi = NULL;
|
||||
|
||||
KASSERT(arg != NULL, ("%s: arg NULL", __func__));
|
||||
ln = (struct llentry *)arg;
|
||||
if (ln == NULL) {
|
||||
panic("%s: NULL entry!\n", __func__);
|
||||
return;
|
||||
}
|
||||
|
||||
if ((ifp = ((ln->lle_tbl != NULL) ? ln->lle_tbl->llt_ifp : NULL)) == NULL)
|
||||
panic("ln ifp == NULL");
|
||||
ifp = ln->lle_tbl->llt_ifp;
|
||||
|
||||
CURVNET_SET(ifp->if_vnet);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user