On Thu, Jul 11, 2013 at 4:36 PM, Johannes Berg <johannes@xxxxxxxxxxxxxxxx> wrote: > diff --git a/net/mac80211/rx.c b/net/mac80211/rx.c > index 23dbcfc..2c5a79b 100644 > --- a/net/mac80211/rx.c > +++ b/net/mac80211/rx.c > @@ -936,8 +936,14 @@ ieee80211_rx_h_check(struct ieee80211_rx_data *rx) > struct ieee80211_hdr *hdr = (struct ieee80211_hdr *)rx->skb->data; > struct ieee80211_rx_status *status = IEEE80211_SKB_RXCB(rx->skb); > > - /* Drop duplicate 802.11 retransmissions (IEEE 802.11 Chap. 9.2.9) */ > - if (rx->sta && !is_multicast_ether_addr(hdr->addr1)) { > + /* > + * Drop duplicate 802.11 retransmissions > + * (IEEE 802.11-2012: 9.3.2.10 "Duplicate detection and recovery") > + */ > + if (rx->skb->len >= 24 && rx->sta && Shouldn't this check rx->skb first? if (rx->sta && rx->sta->len >= 24 && -Jason > + !ieee80211_is_ctl(hdr->frame_control) && > + !ieee80211_is_qos_nullfunc(hdr->frame_control) && > + !is_multicast_ether_addr(hdr->addr1)) { > if (unlikely(ieee80211_has_retry(hdr->frame_control) && > rx->sta->last_seq_ctrl[rx->seqno_idx] == > hdr->seq_ctrl)) { > -- > 1.8.0 > > -- > 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 -- 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