diff options
author | phk <phk@FreeBSD.org> | 2001-02-06 10:12:15 +0000 |
---|---|---|
committer | phk <phk@FreeBSD.org> | 2001-02-06 10:12:15 +0000 |
commit | d214ae21714540c7d954bd861ed084fb157abeb9 (patch) | |
tree | 7c665d67872a65310572d737c33defbe1a63008e /sys/pci | |
parent | 43450ced687857ec4a35796cfed2820c891c103d (diff) | |
download | FreeBSD-src-d214ae21714540c7d954bd861ed084fb157abeb9.zip FreeBSD-src-d214ae21714540c7d954bd861ed084fb157abeb9.tar.gz |
Convert if_multiaddrs from LIST to TAILQ so that it can be traversed
backwards in the three drivers which want to do that.
Reviewed by: mikeh
Diffstat (limited to 'sys/pci')
-rw-r--r-- | sys/pci/if_dc.c | 8 | ||||
-rw-r--r-- | sys/pci/if_de.c | 6 | ||||
-rw-r--r-- | sys/pci/if_fxp.c | 2 | ||||
-rw-r--r-- | sys/pci/if_pcn.c | 2 | ||||
-rw-r--r-- | sys/pci/if_rl.c | 2 | ||||
-rw-r--r-- | sys/pci/if_sf.c | 9 | ||||
-rw-r--r-- | sys/pci/if_sis.c | 4 | ||||
-rw-r--r-- | sys/pci/if_sk.c | 9 | ||||
-rw-r--r-- | sys/pci/if_ste.c | 2 | ||||
-rw-r--r-- | sys/pci/if_ti.c | 2 | ||||
-rw-r--r-- | sys/pci/if_tl.c | 9 | ||||
-rw-r--r-- | sys/pci/if_vr.c | 2 | ||||
-rw-r--r-- | sys/pci/if_wb.c | 2 | ||||
-rw-r--r-- | sys/pci/if_wx.c | 2 | ||||
-rw-r--r-- | sys/pci/if_xl.c | 4 |
15 files changed, 22 insertions, 43 deletions
diff --git a/sys/pci/if_dc.c b/sys/pci/if_dc.c index f66e65d..7e57dae 100644 --- a/sys/pci/if_dc.c +++ b/sys/pci/if_dc.c @@ -1051,7 +1051,7 @@ void dc_setfilt_21143(sc) else DC_CLRBIT(sc, DC_NETCFG, DC_NETCFG_RX_ALLMULTI); - LIST_FOREACH(ifma, &ifp->if_multiaddrs, ifma_link) { + TAILQ_FOREACH(ifma, &ifp->if_multiaddrs, ifma_link) { if (ifma->ifma_addr->sa_family != AF_LINK) continue; h = dc_crc_le(sc, @@ -1122,7 +1122,7 @@ void dc_setfilt_admtek(sc) return; /* now program new ones */ - LIST_FOREACH(ifma, &ifp->if_multiaddrs, ifma_link) { + TAILQ_FOREACH(ifma, &ifp->if_multiaddrs, ifma_link) { if (ifma->ifma_addr->sa_family != AF_LINK) continue; h = dc_crc_be(LLADDR((struct sockaddr_dl *)ifma->ifma_addr)); @@ -1190,7 +1190,7 @@ void dc_setfilt_asix(sc) return; /* now program new ones */ - LIST_FOREACH(ifma, &ifp->if_multiaddrs, ifma_link) { + TAILQ_FOREACH(ifma, &ifp->if_multiaddrs, ifma_link) { if (ifma->ifma_addr->sa_family != AF_LINK) continue; h = dc_crc_be(LLADDR((struct sockaddr_dl *)ifma->ifma_addr)); @@ -1244,7 +1244,7 @@ void dc_setfilt_xircom(sc) else DC_CLRBIT(sc, DC_NETCFG, DC_NETCFG_RX_ALLMULTI); - LIST_FOREACH(ifma, &ifp->if_multiaddrs, ifma_link) { + TAILQ_FOREACH(ifma, &ifp->if_multiaddrs, ifma_link) { if (ifma->ifma_addr->sa_family != AF_LINK) continue; h = dc_crc_le(sc, diff --git a/sys/pci/if_de.c b/sys/pci/if_de.c index 714947b..4f41a34 100644 --- a/sys/pci/if_de.c +++ b/sys/pci/if_de.c @@ -3012,7 +3012,7 @@ tulip_addr_filter( #endif multicnt = 0; - LIST_FOREACH(ifma, &sc->tulip_if.if_multiaddrs, ifma_link) { + TAILQ_FOREACH(ifma, &sc->tulip_if.if_multiaddrs, ifma_link) { if (ifma->ifma_addr->sa_family == AF_LINK) multicnt++; @@ -3040,7 +3040,7 @@ tulip_addr_filter( */ bzero(sc->tulip_setupdata, sizeof(sc->tulip_setupdata)); - LIST_FOREACH(ifma, &sc->tulip_if.if_multiaddrs, ifma_link) { + TAILQ_FOREACH(ifma, &sc->tulip_if.if_multiaddrs, ifma_link) { if (ifma->ifma_addr->sa_family != AF_LINK) continue; @@ -3090,7 +3090,7 @@ tulip_addr_filter( /* * Else can get perfect filtering for 16 addresses. */ - LIST_FOREACH(ifma, &sc->tulip_if.if_multiaddrs, ifma_link) { + TAILQ_FOREACH(ifma, &sc->tulip_if.if_multiaddrs, ifma_link) { if (ifma->ifma_addr->sa_family != AF_LINK) continue; addrp = LLADDR((struct sockaddr_dl *)ifma->ifma_addr); diff --git a/sys/pci/if_fxp.c b/sys/pci/if_fxp.c index 0149221..8cc34ff 100644 --- a/sys/pci/if_fxp.c +++ b/sys/pci/if_fxp.c @@ -1907,7 +1907,7 @@ fxp_mc_setup(sc) nmcasts = 0; if (!sc->all_mcasts) { - LIST_FOREACH(ifma, &ifp->if_multiaddrs, ifma_link) { + TAILQ_FOREACH(ifma, &ifp->if_multiaddrs, ifma_link) { if (ifma->ifma_addr->sa_family != AF_LINK) continue; if (nmcasts >= MAXMCADDR) { diff --git a/sys/pci/if_pcn.c b/sys/pci/if_pcn.c index 0da955b..395a5ff 100644 --- a/sys/pci/if_pcn.c +++ b/sys/pci/if_pcn.c @@ -343,7 +343,7 @@ static void pcn_setmulti(sc) pcn_csr_write(sc, PCN_CSR_MAR0 + i, 0); /* now program new ones */ - LIST_FOREACH(ifma, &ifp->if_multiaddrs, ifma_link) { + TAILQ_FOREACH(ifma, &ifp->if_multiaddrs, ifma_link) { if (ifma->ifma_addr->sa_family != AF_LINK) continue; h = pcn_crc(LLADDR((struct sockaddr_dl *)ifma->ifma_addr)); diff --git a/sys/pci/if_rl.c b/sys/pci/if_rl.c index d3a51ac..850d995 100644 --- a/sys/pci/if_rl.c +++ b/sys/pci/if_rl.c @@ -719,7 +719,7 @@ static void rl_setmulti(sc) CSR_WRITE_4(sc, RL_MAR4, 0); /* now program new ones */ - LIST_FOREACH(ifma, &ifp->if_multiaddrs, ifma_link) { + TAILQ_FOREACH(ifma, &ifp->if_multiaddrs, ifma_link) { if (ifma->ifma_addr->sa_family != AF_LINK) continue; h = rl_calchash(LLADDR((struct sockaddr_dl *)ifma->ifma_addr)); diff --git a/sys/pci/if_sf.c b/sys/pci/if_sf.c index fbaac99..2e1cacf 100644 --- a/sys/pci/if_sf.c +++ b/sys/pci/if_sf.c @@ -448,14 +448,7 @@ static void sf_setmulti(sc) SF_SETBIT(sc, SF_RXFILT, SF_RXFILT_ALLMULTI); } else { i = 1; - /* First find the tail of the list. */ - LIST_FOREACH(ifma, &ifp->if_multiaddrs, ifma_link) { - if (LIST_NEXT(ifma, ifma_link) == NULL) - break; - } - /* Now traverse the list backwards. */ - for (; ifma != NULL && ifma != (void *)&ifp->if_multiaddrs; - ifma = (struct ifmultiaddr *)ifma->ifma_link.le_prev) { + TAILQ_FOREACH_REVERSE(ifma, &ifp->if_multiaddrs, ifmultihead, ifma_link) { if (ifma->ifma_addr->sa_family != AF_LINK) continue; /* diff --git a/sys/pci/if_sis.c b/sys/pci/if_sis.c index 32ed486..ce4b097 100644 --- a/sys/pci/if_sis.c +++ b/sys/pci/if_sis.c @@ -521,7 +521,7 @@ static void sis_setmulti_ns(sc) CSR_WRITE_4(sc, SIS_RXFILT_DATA, 0); } - LIST_FOREACH(ifma, &ifp->if_multiaddrs, ifma_link) { + TAILQ_FOREACH(ifma, &ifp->if_multiaddrs, ifma_link) { if (ifma->ifma_addr->sa_family != AF_LINK) continue; h = sis_crc(sc, LLADDR((struct sockaddr_dl *)ifma->ifma_addr)); @@ -563,7 +563,7 @@ static void sis_setmulti_sis(sc) } /* now program new ones */ - LIST_FOREACH(ifma, &ifp->if_multiaddrs, ifma_link) { + TAILQ_FOREACH(ifma, &ifp->if_multiaddrs, ifma_link) { if (ifma->ifma_addr->sa_family != AF_LINK) continue; h = sis_crc(sc, LLADDR((struct sockaddr_dl *)ifma->ifma_addr)); diff --git a/sys/pci/if_sk.c b/sys/pci/if_sk.c index a6dba79..960b98b 100644 --- a/sys/pci/if_sk.c +++ b/sys/pci/if_sk.c @@ -557,14 +557,7 @@ static void sk_setmulti(sc_if) hashes[1] = 0xFFFFFFFF; } else { i = 1; - /* First find the tail of the list. */ - LIST_FOREACH(ifma, &ifp->if_multiaddrs, ifma_link) { - if (LIST_NEXT(ifma, ifma_link) == NULL) - break; - } - /* Now traverse the list backwards. */ - for (; ifma != NULL && ifma != (void *)&ifp->if_multiaddrs; - ifma = (struct ifmultiaddr *)ifma->ifma_link.le_prev) { + TAILQ_FOREACH_REVERSE(ifma, &ifp->if_multiaddrs, ifmultihead, ifma_link) { if (ifma->ifma_addr->sa_family != AF_LINK) continue; /* diff --git a/sys/pci/if_ste.c b/sys/pci/if_ste.c index 8a14d01..ef7b2f6 100644 --- a/sys/pci/if_ste.c +++ b/sys/pci/if_ste.c @@ -587,7 +587,7 @@ static void ste_setmulti(sc) CSR_WRITE_4(sc, STE_MAR1, 0); /* now program new ones */ - LIST_FOREACH(ifma, &ifp->if_multiaddrs, ifma_link) { + TAILQ_FOREACH(ifma, &ifp->if_multiaddrs, ifma_link) { if (ifma->ifma_addr->sa_family != AF_LINK) continue; h = ste_calchash(LLADDR((struct sockaddr_dl *)ifma->ifma_addr)); diff --git a/sys/pci/if_ti.c b/sys/pci/if_ti.c index 1d52547..b13f1ba 100644 --- a/sys/pci/if_ti.c +++ b/sys/pci/if_ti.c @@ -1081,7 +1081,7 @@ static void ti_setmulti(sc) } /* Now program new ones. */ - LIST_FOREACH(ifma, &ifp->if_multiaddrs, ifma_link) { + TAILQ_FOREACH(ifma, &ifp->if_multiaddrs, ifma_link) { if (ifma->ifma_addr->sa_family != AF_LINK) continue; mc = malloc(sizeof(struct ti_mc_entry), M_DEVBUF, M_NOWAIT); diff --git a/sys/pci/if_tl.c b/sys/pci/if_tl.c index eaa3f058..718498a 100644 --- a/sys/pci/if_tl.c +++ b/sys/pci/if_tl.c @@ -952,14 +952,7 @@ static void tl_setmulti(sc) hashes[1] = 0xFFFFFFFF; } else { i = 1; - /* First find the tail of the list. */ - LIST_FOREACH(ifma, &ifp->if_multiaddrs, ifma_link) { - if (LIST_NEXT(ifma, ifma_link) == NULL) - break; - } - /* Now traverse the list backwards. */ - for (; ifma != NULL && ifma != (void *)&ifp->if_multiaddrs; - ifma = (struct ifmultiaddr *)ifma->ifma_link.le_prev) { + TAILQ_FOREACH_REVERSE(ifma, &ifp->if_multiaddrs, ifmultihead, ifma_link) { if (ifma->ifma_addr->sa_family != AF_LINK) continue; /* diff --git a/sys/pci/if_vr.c b/sys/pci/if_vr.c index 8ea9944..0f44a1d 100644 --- a/sys/pci/if_vr.c +++ b/sys/pci/if_vr.c @@ -530,7 +530,7 @@ static void vr_setmulti(sc) CSR_WRITE_4(sc, VR_MAR1, 0); /* now program new ones */ - LIST_FOREACH(ifma, &ifp->if_multiaddrs, ifma_link) { + TAILQ_FOREACH(ifma, &ifp->if_multiaddrs, ifma_link) { if (ifma->ifma_addr->sa_family != AF_LINK) continue; h = vr_calchash(LLADDR((struct sockaddr_dl *)ifma->ifma_addr)); diff --git a/sys/pci/if_wb.c b/sys/pci/if_wb.c index 67e0b57..f79be10 100644 --- a/sys/pci/if_wb.c +++ b/sys/pci/if_wb.c @@ -641,7 +641,7 @@ static void wb_setmulti(sc) CSR_WRITE_4(sc, WB_MAR1, 0); /* now program new ones */ - LIST_FOREACH(ifma, &ifp->if_multiaddrs, ifma_link) { + TAILQ_FOREACH(ifma, &ifp->if_multiaddrs, ifma_link) { if (ifma->ifma_addr->sa_family != AF_LINK) continue; h = wb_calchash(LLADDR((struct sockaddr_dl *)ifma->ifma_addr)); diff --git a/sys/pci/if_wx.c b/sys/pci/if_wx.c index 1316093..b455618 100644 --- a/sys/pci/if_wx.c +++ b/sys/pci/if_wx.c @@ -518,7 +518,7 @@ wx_mc_setup(sc) } sc->wx_nmca = 0; - LIST_FOREACH(ifma, &ifp->if_multiaddrs, ifma_link) { + TAILQ_FOREACH(ifma, &ifp->if_multiaddrs, ifma_link) { if (ifma->ifma_addr->sa_family != AF_LINK) { continue; } diff --git a/sys/pci/if_xl.c b/sys/pci/if_xl.c index 1fc62b3..0fcaf8b 100644 --- a/sys/pci/if_xl.c +++ b/sys/pci/if_xl.c @@ -808,7 +808,7 @@ static void xl_setmulti(sc) return; } - LIST_FOREACH(ifma, &ifp->if_multiaddrs, ifma_link) + TAILQ_FOREACH(ifma, &ifp->if_multiaddrs, ifma_link) mcnt++; if (mcnt) @@ -851,7 +851,7 @@ static void xl_setmulti_hash(sc) CSR_WRITE_2(sc, XL_COMMAND, XL_CMD_RX_SET_HASH|i); /* now program new ones */ - LIST_FOREACH(ifma, &ifp->if_multiaddrs, ifma_link) { + TAILQ_FOREACH(ifma, &ifp->if_multiaddrs, ifma_link) { if (ifma->ifma_addr->sa_family != AF_LINK) continue; h = xl_calchash(LLADDR((struct sockaddr_dl *)ifma->ifma_addr)); |