summaryrefslogtreecommitdiffstats
path: root/sys/pci/if_sf.c
diff options
context:
space:
mode:
Diffstat (limited to 'sys/pci/if_sf.c')
-rw-r--r--sys/pci/if_sf.c9
1 files changed, 1 insertions, 8 deletions
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;
/*
OpenPOWER on IntegriCloud