PERFORCE change 35637 for review
Sam Leffler
sam at FreeBSD.org
Wed Aug 6 10:48:53 PDT 2003
http://perforce.freebsd.org/chv.cgi?CH=35637
Change 35637 by sam at sam_ebb on 2003/08/06 10:48:15
collect "lost" routing table locking changes
Affected files ...
.. //depot/projects/netperf/sys/net/if_stf.c#2 edit
.. //depot/projects/netperf/sys/netinet/in_pcb.h#2 edit
.. //depot/projects/netperf/sys/netinet6/in6_ifattach.c#2 edit
Differences ...
==== //depot/projects/netperf/sys/net/if_stf.c#2 (text+ko) ====
@@ -718,6 +718,7 @@
struct rtentry *rt;
struct rt_addrinfo *info;
{
+ RT_LOCK_ASSERT(rt, MA_OWNED);
if (rt)
rt->rt_rmx.rmx_mtu = IPV6_MMTU;
==== //depot/projects/netperf/sys/netinet/in_pcb.h#2 (text+ko) ====
@@ -260,6 +260,9 @@
#define INP_INFO_RUNLOCK(ipi) mtx_unlock(&(ipi)->ipi_mtx)
#define INP_INFO_WUNLOCK(ipi) mtx_unlock(&(ipi)->ipi_mtx)
+#define INP_INFO_RLOCK_ASSERT(ipi) mtx_assert(&(ipi)->ipi_mtx, MA_OWNED)
+#define INP_INFO_WLOCK_ASSERT(ipi) mtx_assert(&(ipi)->ipi_mtx, MA_OWNED)
+
#define INP_PCBHASH(faddr, lport, fport, mask) \
(((faddr) ^ ((faddr) >> 16) ^ ntohs((lport) ^ (fport))) & (mask))
#define INP_PCBPORTHASH(lport, mask) \
==== //depot/projects/netperf/sys/netinet6/in6_ifattach.c#2 (text+ko) ====
@@ -985,9 +985,10 @@
sin6.sin6_addr = in6addr_linklocal_allnodes;
sin6.sin6_addr.s6_addr16[1] = htons(ifp->if_index);
rt = rtalloc1((struct sockaddr *)&sin6, 0, 0UL);
- if (rt && rt->rt_ifp == ifp) {
- rtrequest(RTM_DELETE, (struct sockaddr *)rt_key(rt),
- rt->rt_gateway, rt_mask(rt), rt->rt_flags, 0);
+ if (rt) {
+ if (rt->rt_ifp == ifp)
+ rtrequest(RTM_DELETE, (struct sockaddr *)rt_key(rt),
+ rt->rt_gateway, rt_mask(rt), rt->rt_flags, 0);
rtfree(rt);
}
}
More information about the p4-projects
mailing list