rendered paste body--- ath/if_ath.c 2010-01-18 15:21:22.000000000 +0100+++ ath/if_ath.c 2011-03-17 13:59:52.000000000 +0100@@ -4257,7 +4257,7 @@ { struct ieee80211com *ic = &sc->sc_ic; struct ieee80211vap *vap;- struct dev_mc_list *mc;+ struct netdev_hw_addr *ha; u_int32_t val; u_int8_t pos; @@ -4265,11 +4265,11 @@ /* XXX locking */ TAILQ_FOREACH(vap, &ic->ic_vaps, iv_next) { struct net_device *dev = vap->iv_dev;- for (mc = dev->mc_list; mc; mc = mc->next) {+ netdev_for_each_mc_addr(ha, dev) { /* calculate XOR of eight 6-bit values */- val = LE_READ_4(mc->dmi_addr + 0);+ val = LE_READ_4(ha->addr + 0); pos = (val >> 18) ^ (val >> 12) ^ (val >> 6) ^ val;- val = LE_READ_4(mc->dmi_addr + 3);+ val = LE_READ_4(ha->addr + 3); pos ^= (val >> 18) ^ (val >> 12) ^ (val >> 6) ^ val; pos &= 0x3f; mfilt[pos / 32] |= (1 << (pos % 32));