Date: Fri, 26 Jun 2009 18:50:49 +0000 (UTC) From: Robert Watson <rwatson@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r195070 - head/sys/net Message-ID: <200906261850.n5QIonne094924@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: rwatson Date: Fri Jun 26 18:50:49 2009 New Revision: 195070 URL: http://svn.freebsd.org/changeset/base/195070 Log: Use if_addr_rlock/if_addr_runlock for if_spp when iterating if_addrhead, as it is loadable as a module. Approved by: re (kib) MFC after: 6 weeks Modified: head/sys/net/if_spppsubr.c Modified: head/sys/net/if_spppsubr.c ============================================================================== --- head/sys/net/if_spppsubr.c Fri Jun 26 18:40:29 2009 (r195069) +++ head/sys/net/if_spppsubr.c Fri Jun 26 18:50:49 2009 (r195070) @@ -4905,7 +4905,7 @@ sppp_get_ip_addrs(struct sppp *sp, u_lon * aliases don't make any sense on a p2p link anyway. */ si = 0; - IF_ADDR_LOCK(ifp); + if_addr_rlock(ifp); TAILQ_FOREACH(ifa, &ifp->if_addrhead, ifa_link) if (ifa->ifa_addr->sa_family == AF_INET) { si = (struct sockaddr_in *)ifa->ifa_addr; @@ -4924,7 +4924,7 @@ sppp_get_ip_addrs(struct sppp *sp, u_lon if (si && si->sin_addr.s_addr) ddst = si->sin_addr.s_addr; } - IF_ADDR_UNLOCK(ifp); + if_addr_runlock(ifp); if (dst) *dst = ntohl(ddst); if (src) *src = ntohl(ssrc); @@ -4948,7 +4948,7 @@ sppp_set_ip_addr(struct sppp *sp, u_long * aliases don't make any sense on a p2p link anyway. */ si = 0; - IF_ADDR_LOCK(ifp); + if_addr_rlock(ifp); TAILQ_FOREACH(ifa, &ifp->if_addrhead, ifa_link) { if (ifa->ifa_addr->sa_family == AF_INET) { si = (struct sockaddr_in *)ifa->ifa_addr; @@ -4958,7 +4958,7 @@ sppp_set_ip_addr(struct sppp *sp, u_long } } } - IF_ADDR_UNLOCK(ifp); + if_addr_runlock(ifp); if (ifa != NULL) { int error; @@ -5010,7 +5010,7 @@ sppp_get_ip6_addrs(struct sppp *sp, stru * aliases don't make any sense on a p2p link anyway. */ si = NULL; - IF_ADDR_LOCK(ifp); + if_addr_rlock(ifp); TAILQ_FOREACH(ifa, &ifp->if_addrhead, ifa_link) if (ifa->ifa_addr->sa_family == AF_INET6) { si = (struct sockaddr_in6 *)ifa->ifa_addr; @@ -5036,7 +5036,7 @@ sppp_get_ip6_addrs(struct sppp *sp, stru bcopy(&ddst, dst, sizeof(*dst)); if (src) bcopy(&ssrc, src, sizeof(*src)); - IF_ADDR_UNLOCK(ifp); + if_addr_runlock(ifp); } #ifdef IPV6CP_MYIFID_DYN @@ -5065,7 +5065,7 @@ sppp_set_ip6_addr(struct sppp *sp, const */ sin6 = NULL; - IF_ADDR_LOCK(ifp); + if_addr_rlock(ifp); TAILQ_FOREACH(ifa, &ifp->if_addrhead, ifa_link) { if (ifa->ifa_addr->sa_family == AF_INET6) { sin6 = (struct sockaddr_in6 *)ifa->ifa_addr; @@ -5075,7 +5075,7 @@ sppp_set_ip6_addr(struct sppp *sp, const } } } - IF_ADDR_UNLOCK(ifp); + if_addr_runlock(ifp); if (ifa != NULL) { int error;
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200906261850.n5QIonne094924>