It appears that ieee80211_tx_status also scales poorly when using large numbers of virtual stations connected to a single AP, due to for_each_sta_info(local, hdr->addr1, sta, tmp)... I'm going to try using the vif-hashing to make this faster, but first a question: Since it matches on MAC addresses, should it just return at the bottom of the loop since it has found a match, and MACs are supposed to be unique? for_each_sta_info(local, hdr->addr1, sta, tmp) { /* skip wrong virtual interface */ if (!ether_addr_equal(hdr->addr2, sta->sdata->vif.addr)) continue; ... If so, that would be a good improvement since the hash can easily be turned into a linear search even in AP mode (without all of my virtual-station scenarios)... Thanks, Ben -- Ben Greear <greearb@xxxxxxxxxxxxxxx> Candela Technologies Inc http://www.candelatech.com -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html