Page MenuHomeFreeBSD

D56129.diff
No OneTemporary

D56129.diff

diff --git a/sys/netinet6/nd6_rtr.c b/sys/netinet6/nd6_rtr.c
--- a/sys/netinet6/nd6_rtr.c
+++ b/sys/netinet6/nd6_rtr.c
@@ -1413,11 +1413,8 @@
ND6_WUNLOCK();
/* ND_OPT_PI_FLAG_ONLINK processing */
- if (new->ndpr_raf_onlink) {
- struct epoch_tracker et;
-
+ if (new->ndpr_raf_onlink != 0) {
ND6_ONLINK_LOCK();
- NET_EPOCH_ENTER(et);
if ((error = nd6_prefix_onlink(new)) != 0) {
nd6log((LOG_ERR, "%s: failed to make the prefix %s/%d "
"on-link on %s (errno=%d)\n", __func__,
@@ -1425,7 +1422,6 @@
pr->ndpr_plen, if_name(pr->ndpr_ifp), error));
/* proceed anyway. XXX: is it correct? */
}
- NET_EPOCH_EXIT(et);
ND6_ONLINK_UNLOCK();
}
@@ -2161,7 +2157,6 @@
ifa = (struct ifaddr *)in6ifa_ifpforlinklocal(ifp,
IN6_IFF_NOTREADY | IN6_IFF_ANYCAST);
if (ifa == NULL) {
- /* XXX: freebsd does not have ifa_ifwithaf */
CK_STAILQ_FOREACH(ifa, &ifp->if_addrhead, ifa_link) {
if (ifa->ifa_addr->sa_family == AF_INET6) {
ifa_ref(ifa);
@@ -2170,6 +2165,7 @@
}
/* should we care about ia6_flags? */
}
+ NET_EPOCH_EXIT(et);
if (ifa == NULL) {
/*
* This can still happen, when, for example, we receive an RA
@@ -2187,7 +2183,6 @@
error = nd6_prefix_onlink_rtrequest(pr, ifa);
ifa_free(ifa);
}
- NET_EPOCH_EXIT(et);
return (error);
}

File Metadata

Mime Type
text/plain
Expires
Wed, Jul 22, 12:12 PM (9 h, 36 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
35316230
Default Alt Text
D56129.diff (1 KB)

Event Timeline