On Sat, Oct 11, 2008 at 10:26:33AM +0200, Johannes Berg wrote: > When looking at this code during the rate control API rewrite > yesterday, we wondered whether the determination of short > preamble was correct or not. I don't think it was, and this > should be better. > - if (ieee80211_is_data(hdr->frame_control) && > - tx->sdata->vif.bss_conf.use_short_preamble && > - (!tx->sta || test_sta_flags(tx->sta, WLAN_STA_SHORT_PREAMBLE))) > + if (tx->sdata->vif.bss_conf.use_short_preamble && > + (ieee80211_is_data(hdr->frame_control) || > + (tx->sta && test_sta_flags(tx->sta, WLAN_STA_SHORT_PREAMBLE))) Changing '!tx->sta ||' to 'tx->sta &&' sounds reasonable, but I'm not so sure about the other change.. In theory, short preamble is negotiated per STA and while we do current disable short preamble completely in the BSS if a non-short-preamble-capable STA associates, I'm not sure whether that would be an absolute requirement. As far as management frames (e.g., Probe Response) are concerned, IEEE 802.11-2007 18.2.2.2 has an interesting statement: "all management traffic is returned with the same type preamble as received". I have not been able to find normative requirement for that being the case, though. -- Jouni Malinen PGP id EFC895FA -- 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