summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorrwatson <rwatson@FreeBSD.org>2009-06-26 19:04:08 +0000
committerrwatson <rwatson@FreeBSD.org>2009-06-26 19:04:08 +0000
commit12c75db4f1a160efc2469c66b2dbb137def4c0d3 (patch)
tree8161295a969dacfda2ea23620d96478e28f7d5a4
parentd5ad72596746c825ae9a0e4a13a839538471d21a (diff)
downloadFreeBSD-src-12c75db4f1a160efc2469c66b2dbb137def4c0d3.zip
FreeBSD-src-12c75db4f1a160efc2469c66b2dbb137def4c0d3.tar.gz
Use if_maddr_rlock() instead of IF_ADDR_LOCK() to protect access to
if_multiaddrs in if_cxgb. Approved by: re (kib) MFC after: 6 weeks
-rw-r--r--sys/dev/cxgb/cxgb_adapter.h5
1 files changed, 2 insertions, 3 deletions
diff --git a/sys/dev/cxgb/cxgb_adapter.h b/sys/dev/cxgb/cxgb_adapter.h
index 1e1e47a..2b25a34 100644
--- a/sys/dev/cxgb/cxgb_adapter.h
+++ b/sys/dev/cxgb/cxgb_adapter.h
@@ -467,7 +467,7 @@ t3_get_next_mcaddr(struct t3_rx_mode *rm)
struct ifmultiaddr *ifma;
int i = 0;
- IF_ADDR_LOCK(ifp);
+ if_maddr_rlock(ifp);
TAILQ_FOREACH(ifma, &ifp->if_multiaddrs, ifma_link) {
if (ifma->ifma_addr->sa_family != AF_LINK)
continue;
@@ -477,8 +477,7 @@ t3_get_next_mcaddr(struct t3_rx_mode *rm)
}
i++;
}
- IF_ADDR_UNLOCK(ifp);
-
+ if_maddr_runlock(ifp);
rm->idx++;
return (macaddr);
OpenPOWER on IntegriCloud